Shell、终端(Terminal)或控制台(Console),严格来说它们不是同样的东西。
- Shell:指命令行解释器,常见的解释器有bash,sh,在Ubuntu系统默认用的是bash解释器,所以有时说bash也是指命令行。
- 终端(Terminal):通常指用来运行Shell的程序,示场景的不同有不一样的名称,如Ubuntu系统自带的叫本地终端,嵌入式开发板常常提供串口进行输入输出的串口终端,通过网络访问的ssh终端。
- 控制台(Console):特指某些终端,通常是指它的物理形态,如带键盘的显示器和物理设备。
命令提示符
如图,这行提示符分成以下几个部分:
- gu:在“@”符号的左侧,它表示的是当前登录用户。
- @:分隔符号,可理解为at,表示gu用户at主机Ubuntu上。
- Ubuntu:当前系统的主机名。
- “:”:分隔符号。
- “~”:冒号后表示用户当前所在的目录,此处的波浪线表示当前用户的家目录,即“ ~”的含义为/home/gu的目录
- “$”:命令提示符,Linux用这个符号标识登录的用户权限等级。如果是超级用户(root),提示符就是“#”,如果是普通用户就是“ $ ”。
命令小练习
cd /home # 切换到/home目录
pwd # 显示当前目录
cd ~ # 切换至~目录
pwd # 显示当前目录
ls # l是字母L的小写
ls -l # 同上,两个l都是字母L的小写
命令执行后如下图:
对部分命令解释:
- cd /home:执行“cd”命令,并以“/home”作为参数,表示切换至/home目录。
- ls:执行“ls”命令,该命令表示列出当前目录下的内容,加上“-l”参数,表示以列表的形式列出目录下详细的内容,可以看到会比普通的ls命令多了很多内容。
命令行格式:
command [-options] [argument]
命令行的组成一般分三个部分,每个部分之间使用空格隔开,说明如下:
- command:命令名,如前面的cd命令,pwd命令,ls命令
- -options:命令的选项,使用“-”开头,如前面示例“ls -l”中的“-l”选项,命令会根据具体的选项执行不同的操作。使用“-”时一般是选项的简写,一些选项可以同时使用,“ls -la”等价与“ls -l -a”,即同时使用“l”和“a”选项。
- argument:命令参数,如前面cd命令中以“/home”可“~”参数作为路径名。
命令格式中,使用“[ ]”扩起来的内容表示它不是要求必需的,例如前面使用时cd命令时没有带选项,使用pwd命令不带选项及参数。
命令的帮助
查看命令说明:
command --help # 打印命令的一些帮助说明
man command # 打开命令手册,按q退出
tips:
- 某些命令可以只输入部分然后之间按键盘上的“Tab”键补全,或者有些指令忘了只记得部分也可以用“Tab”键。
- 命令取消与退出,有时我们想终止命令的执行,可以通过“Ctrl+c”来结束。