Contents

1-2-1:The Missing Semester观看记录1

Contents

overview & shell

链接第一集

  • 介绍一些你必要学会的工具,而这些东西一般你在其他课程里是默认你会的

shell

  • date
  • echo
    • echo $PATH
  • which: show u the path of this program 讲解什么是path,绝对路径和相对路径
  • pwd: print the present working directory
  • cd;ls;cd -: go back to ur last directory
  • ~:means ru home
  • ls -l:讲解了一部分关于文件权限的内容
  • mv:move a file and u can change a file name through this way,old name and new name
  • cp:just copy from and copy to
  • rm:remove a file,删除的时候并不是递归的,所以当你需要删除整个文件夹的时候需要添加一个-r参数,rmidr允许你删除空文件夹
  • mkdir:创建文件夹,比如mkdir hello world,会为你创建两个文件,hello和world,如果你想要创建hello world这一个文件,你可以使用转义字符\和"“引用字符串,比如我在temp下用mkdir hello\ world
  • man:tell u the manual of another program
  • ctrl+l:clear the terminal and go to the top

输入信息流和输出信息流

程序会有一个标准的输入流,流入程序后会有一个输出流,可以用尖括号来引导流的输运,<表示对于输入流的引导,把右边的内容作为输入提供给左边的程序>表示对于输出流的向右引导,比如echo hello > hello.txt,本来echo是会将hello输出到terminal的但是被>引导到了hello.txt文件中,所以执行这条命令之后没有内容输出到屏幕https://mayue-1312060474.cos.ap-chengdu.myqcloud.com/picgo/The_Missing_Semester%E8%A7%82%E7%9C%8B%E8%AE%B0%E5%BD%951_image_1.png

  • |: 管道符,将左边程序的输出作为右边程序的输入
  • tail:输出给予输入的最后一行,比如ls -l / | tail -n1! ,管道符的左右两个程序之间彼此并不知道对方,他们只是被管道符连通了输出作为tail的输入
  • sudo:意味着do like su,而su命令就是切换到superuser /sys下的文件是内核文件,将硬件映射到操作系统中以文件的形式表现出来,这也就意味着,你可以通过操纵软件,来控制硬件![[Pasted image 20230109215717.png]] 这里我们尝试通过sudo来调整背光亮度但是被拒绝了![[Pasted image 20230109220032.png]] 这里是因为,我们的重定向与输入输出的方向指定,是由shell指定的,我们这里运用sudo,但是sudo是用于echo这个程序,而打开brightness的是shell(因为>指定输出) ![[Pasted image 20230109220451.png]] 使用su切换到root用户
  • echo 1060 | sudo tee brightness tee将输入传给输出同时在终端也输出信息
  • xdg-open:后面跟文件,它将会用特定的程序来打开该文件(maybe only works on linux,on macos it maybe just open)

总结

其实这里面的内容很多自己此前都了解过,相对的比较熟悉吧,第一集比较基础,但是还是有很多思维上面的收获,比如关于标准输入和标准输出的哲学,融贯于shell中,是shell控制着信息流,而正是由于这个特性,程序之间不需要在意彼此的连通性,这部分工作交给了shell,这和windows下软件分立的体验是完全不同的

Flag Counter