命令行界面
在本节课中,我们将讨论作为程序员你最不可或缺的工具之一——命令行的基础知识。
什么是终端?
命令行界面是一种你可以输入文本命令来让计算机执行特定任务的工具,与通过鼠标点击菜单和按钮使用图形用户界面的方式形成对比。
由于命令行界面允许你通过输入命令直接控制计算机,许多任务可以更高效地完成。例如,如果你需要更改大约2000个文件的名称,可以在命令行中使用 for 循环,在几秒钟内完成全部修改。因此,掌握基本的命令行知识是必不可少的。
接收输入命令并显示数据的用户界面被称为 shell。有多种不同的 shell 可供选择,但最常用的是 Bash shell,它是 Linux 和 Mac 系统中终端应用程序的默认选项。Windows 系统默认只提供功能较弱的命令提示符(Command Prompt),其功能远不如 Bash 强大。如果你打算在 Windows 上跟随本教程操作,建议安装 cygwin。
打开一个 shell,你会看到一个空白(通常是黑色)的屏幕,光标位于类似以下内容的右侧:
1accountname@machinename:~$
现在,我们终于可以开始学习一些基本命令了!
列出文件和目录
在 shell 中输入 ls 并按回车(或尝试下面的示例),看看神奇的效果吧。
1ls
瞧!当前目录下的所有文件和目录都会被打印出来。
查看当前所在目录
要查看自己当前所在的目录,输入 pwd 并按回车。
1pwd
切换目录
你可以通过以下命令进入当前目录下的某个子目录:
1cd nameOfDirectory
要返回上一级目录,使用:
1cd ..
1ls 2cd sampleDirectory 3ls 4cd .. 5ls
查看文件内容
使用以下命令将文件内容输出到终端:
1cat nameOfFile
1cat SampleFile.txt
创建文件
使用以下命令创建一个空文件:
1touch nameOfFile
1touch nameOfFile.txt 2ls
创建新目录
使用以下命令创建一个新目录:
1mkdir newFolder
1mkdir newFolder 2ls
移动文件
你可以将文件从一个目录移动到另一个目录,例如:
1mv path/to/file/filename new/path 2mv path/to/file/new/path/filename . 3mv filename ..
注意:. 表示当前目录,因此上面第二个命令是将文件从 path/to/file/new/path/filename 移动到当前目录。如前所述,.. 表示父目录,最后一个命令是将文件 filename 移动到父目录。
1mkdir newfolder 2mv fileName.txt newfolder 3ls 4mv newfolder/fileName.txt . 5ls
删除文件
使用以下命令删除文件:
1rm fileName
1touch fileName # 创建一个文件 2ls 3rm fileName # 删除它 4ls
掌握了这些命令行基础知识后,接下来让我们进入下一课,学习使用 Git 进行版本控制!
Quiz
运行 ls 命令会发生什么?