计算机教育缺失的一课(2020)

基础使用:

当输入带空格传参时,需要用引号括起来,或者像上面一样进行转义。否则会被认为是传入两个参数

  1. shell如何定位程序

shell通过环境变量确认调取程序的位置,而bash本身就是就是一种编程语言,也就可以被用来写一些脚本。而且环境很多环境变量是在shell开始之前就已经设定好的:作为分割

  1. 当我们想要查看程序位置,可以用which
  1. 打印当前位置,cd用于切换目录 /(根目录) ../(上级目录) ./(当前目录)
  1. ~/(home目录,或者说主目录)
  2. cd -返回上次查看的目录(撤回键?)
  1. 其他选项

\]是可选项 ...是一个或多个参数 ![](https://cdn.nlark.com/yuque/0/2025/png/49051242/1749037629922-b4421569-75b9-45c1-8e24-e45439b1a234.png) 读写执行 rwx三个权限 值得注意的是,当你对文件有写入权限,而对其所在的目录没有写入权限时,你可以清空文件而不能进行删除。当你要执行某个程序时,你需要同时拥有文件和其所有父目录的执行权限 7. vm命令 可以用作给文件重命名 ![](https://cdn.nlark.com/yuque/0/2025/png/49051242/1749038044915-1c3c9a2e-67a1-412a-b7f9-50f17f272c3c.png) 或者是移动文件(不是复制,是移动) ![](https://cdn.nlark.com/yuque/0/2025/png/49051242/1749038179776-3faa95e8-34d6-4716-8940-1d777c68cb9f.png) 8. cp复制文件,也是需要两个参数 ![](https://cdn.nlark.com/yuque/0/2025/png/49051242/1749038357845-c65c938f-14ac-4411-99dc-4dc0d058d310.png) 9. rm删除指令 rm 文件地址 -r可以递归性的删除文件(可以删除整个目录) rmdir可以删除空目录 10. man打开手册,类似于--help ![](https://cdn.nlark.com/yuque/0/2025/png/49051242/1749038622728-c58fe305-6839-496f-8e0e-2666d0d11628.png) 11. 重定向 echo hello > hello.txt输出hello将结果流重定向到hello.txt里 cat hello2.txt 读取hello的文件内容,将流输出到hello2.txt里,这时如果用\>\>的话,会在文件末尾进行追加,而不是对文件进行覆盖 12. 管道符 管道符两侧的程序相互是不知道的 ,也就是说,互相只是发送或者获取相对应的数据流 ls - l |tail -n1将ls输出的 13. sys目录 这是一个内核目录,内部包含与硬件进行交互的文件,像是调整亮度,点亮某个灯等等 这里我们需要root权限,我们可以用sudo来临时调用root权限 echo 1060 | sudo tee brightness xdg-open hello2.txt 用于寻找适当的程序打开文件