前言
在CS自学指南的启发之下,我选取了部分适合自己的系列课程进行学习,并以博客的形式记录学习笔记。当前文章的课程为mit-missing semister. 该课程讲述了CS专业学生必会的系列开发工具,内容具有相当的实用意义。
本文记录了第一节:Shell的用法中的要点。学会使用Shell命令可以大大提高工作效率,Windows, MacOS, Linux等操作系统均提供了Shell工具,其中Windows原生Shell比较难用,对于Windows笔记本使用者,可以使用WSL技术在Windows平台安装Linux子系统后进行开发。
小试牛刀
打开Shell工具后,可以看出当前机器名称为xiahua
,登录账户为xiahua
,所在文件路径为~
也即当前账户根路径/xiahua
,$
后可输入用户指令,符号$
表示当前账户并非Administor,部分操作命令会受限。
1 | xiahua@xiahua:~$ |
在命令行输入date
后回车,得到如下输出:
1 | xiahua@xiahua:~$ date |
输入cal
后回车,得到了一个简约的日历:
1 | (base) xiahua@xiahua:~$ cal |
怎么样,是不是很“神奇”。实际上,上述操作可以理解为Shell终端接收到命令(可能有参数,也可能无参数)后,调用对应的程序执行该命令,而这些程序所在路径存储在**系统变量(PATH)**中,可以通过echo $PATH
命令查看系统变量,这里echo
用来输出其后所跟参数:
1 | (base) xiahua@xiahua:~$ echo "Hello World!" |
要查询一个命令所对应程序的路径,可以使用which
命令,如下:
1 | (base) xiahua@xiahua:~$ which echo |
文件夹操作
在Linux上,/
是文件系统的根目录(root),对于文件路径的表示可以有绝对路径和相对路径两种方式,以/
开头的路径均为绝对路径,其他为相对路径。
使用pwd
可以查看当前所在绝对路径;cd
用来进入某一目录,该命令其后所跟参数为目标目录所在路径,可以为绝对或相对路径;..
表示上一级目录;~
表示当前账户所在路径,如下:
1 | (base) xiahua@xiahua:~$ pwd |
1 | (base) xiahua@xiahua:~$ cd .. |
文件操作
使用touch
创建文本文件,其后参数为文件名及类型;使用ls
列出当前路径下的所有文件名;cat
用来查看文本文件内容,其后参数为文件名及类型;可以用echo
将字符串写入文件;mv
用来移动文件;cp
用来复制文件,rm
为移除文件;mkdir
为创建一个文件夹具体使用如下:
1 | (base) xiahua@xiahua:~/test$ touch test.txt |
授人以渔
man
可以查看具体命令的用途和用法
1 | man cat |
- 本文作者: 夏花
- 本文链接: http://xiahua19.github.io/2022/07/16/shell/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!