![Linux操作系统实用教程](https://wfqqreader-1252317822.image.myqcloud.com/cover/238/32375238/b_32375238.jpg)
3.3 Linux的终端窗口(命令行)
早期的Linux系统并没有现在的Linux系统所具备的X-Window图形化管理界面,而只有命令行终端模式来实现人机交互。后来由于Linux系统的影响力越来越大,使用的用户也越来越多,为了方便普通用户使用Linux系统,才设计并开发出了X-Window图形化管理界面。但是原来的命令行终端模式仍然是主流的工具,并且发挥着非常重要的作用。
可以采用以下3种方法进入命令行终端工作方式:
● 在图形桌面下启动终端窗口进入命令行终端工作方式。
● 在系统启动时直接进入命令行终端工作方式。
● 使用远程登录方式。
3.3.1 启动终端窗口
Red Hat Enterprise Linux 7.5与以往的版本一样,在X-Window图形环境中仍然保留了命令行终端窗口。在桌面的“应用程序”菜单中选择“系统工具”→“终端”命令,即可打开命令行终端窗口。在X-Window图形环境中打开命令行终端窗口的过程如图3.14所示。
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_19.jpg?sign=1738985541-ufj3bXkbJJFTDmQ6C0QJDdwx9PROoSaN-0-ec4c2a05c69f8ab00c66561b6a11de59)
图3.14 打开命令行终端窗口
打开命令行终端窗口后,会看到一个Shell提示符。若根用户登录系统,则提示符为“#”;若普通用户登录系统,则提示符为“$”。用户可以在提示符下输入带有选项和参数的字符命令,并能够在终端窗口中看到命令的运行结果。命令执行结束后,系统会重新返回一个提示符,等待接收新的命令。
3.3.2 终端窗口的常规操作
在如图3.15所示的终端窗口中选择“文件”→“打开终端”命令或按快捷键“Shift+Ctrl+N”可以新建一个终端窗口;选择“文件”→“打开标签”命令或按快捷键“Shift+Ctrl+T”可以新建一个标签。
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_20.jpg?sign=1738985541-tsSM8LlHfD56Re3hcxPnLV2cYTFDiM1U-0-a8fded48826c141dbefece5031e2df0f)
图3.15 终端窗口
在编辑命令行时,新输入的字符会出现在光标所在的位置,可以使用左右方向键把光标在命令行上从一端移动到另一端,也可以按上下方向键在不同行之间移动。表3.3列出了可以用来移动光标的快捷键。
表3.3 移动光标的快捷键
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_21.jpg?sign=1738985541-z6ZVf2YQ1701UTZa9YiTctRlWlJ6BfTw-0-6cf915b8b3ab04e86c33ddd7ba3851a8)
表3.4列出了编辑命令行时输入字符的一些快捷方式。
表3.4 编辑命令行时输入字符的快捷方式
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_22.jpg?sign=1738985541-o1z6kNEd85ogugKRqwRC3od2fT0xu3yJ-0-8bf86f58cb28d8e224303cf0bdef4533)
续表
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_23.jpg?sign=1738985541-S7AvHWz03mpGTuyBNQf2jRZ7V4qxdi8c-0-8e9a02861b5817686ecb0da0485e0ad0)
表3.5列出了在命令行中实现剪切和粘贴的快捷方式。
表3.5 命令行中剪切和粘贴的快捷方式
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_24.jpg?sign=1738985541-IGxwk66R7YK380cUEwr5WeV3tM7vfgvC-0-9f4293a30c5d6f466849488471b4690c)
在Red Hat Enterprise Linux 中,命令行是区分大小写的。例如,系统会认为“student”与“Student”是两个不同的名字。
3.3.3 命令行自动补全
为了简化打字工作,Bash Shell提供了几种可以对输入不完整的值进行自动补全的方法。如果想要对输入进行自动补全,则只需输入初始的几个字符,然后按“Tab”键,系统就会自动匹配所需的其余输入。当有多种匹配时,系统会给出提示,按“Esc+?”组合键或按两次“Tab”键,可以列出所有可能的匹配。自动补全可以应用在下面4类输入工作中。
1.用环境变量名补全
如果输入的文本以“$”开始,Shell就以当前Shell的一个环境变量名补全文本。例如:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_25.jpg?sign=1738985541-8blZyz1VQasNkMEscQXSsuBZzs09D1GH-0-45360df08b30e65fa9e09aeb6f0e499c)
如果仅输入“$”,则系统会按字母顺序列出所有的环境变量:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_26.jpg?sign=1738985541-WLEwZ8XUfQSJKDauTyaaPktT1OdLJ4wq-0-6b3583742151ce3e6af25b5b18fff552)
2.用用户名补全
如果输入的文本以波浪线“~”开始,则Shell会以用户名补全文本。例如:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_27.jpg?sign=1738985541-1P4r9Ifo9gcHXmTyVqzD0xcesyVQKY2b-0-bd4ad5a90b19f73e909d0bb0be4f4200)
3.用命令、别名或函数名补全
如果输入的文本以常规字符开始,则Shell将尝试利用命令、别名或函数名来补全文本。例如:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_28.jpg?sign=1738985541-ocBKb7Mz6ZK5WZmRXAEx6ZgQxqoapYAA-0-a4080482b825d28d8b6f14db91122067)
4.用主机名补全
如果输入的文本以“@”开始,则系统会利用/etc/hosts文件中的主机名来补全文本。例如:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_29.jpg?sign=1738985541-Yzixql5LzZYxnLGpboFLKZXtYxbUY3Ce-0-959ce5190ab4cc3af0149878e044fb74)
表3.6列出了自动补全的快捷方式及其说明。
表3.6 自动补全的快捷方式及其说明
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_30.jpg?sign=1738985541-j7dk1WpKJEj7XnA8AjrC9HthwvsHBRRV-0-9fe6f10c9da2725abe74c482ee842aa7)
续表
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_31.jpg?sign=1738985541-fjiITeHCy2QXlRrxFehEtQh41NLZ8T2Y-0-2a82dbfaba51b9aece8b46b2bccae23a)
3.3.4 命令行的帮助
Red Hat Enterprise Linux 7.5与以往的版本一样,在X-Window图形环境中仍然保留了命令行终端窗口。
1.man 命令
man命令用于查看Linux系统的手册。手册是Linux中广泛使用的联机帮助形式,其中不仅包括常用的命令帮助说明,还包括配置文件、设备文件、协议和库函数等多种信息。man命令的一般格式为:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_32.jpg?sign=1738985541-fUtauD7pbq7EGj8D5AeZM5ikjTZcPyhq-0-56d40fed43d5b8e8178389c9052a8f1e)
例如,使用man命令查看clear命令的帮助说明:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_33.jpg?sign=1738985541-ZMYC4Ujq8v94ErfKNzm1uOP39kc85a1X-0-b6823817bb90283aeae6b73c8154e209)
手册一般包括NAME、DESCRIPTION、FILES和SEE ALSO等几个部分,按“q”键可以退出man命令的交互界面。
手册分为man1~man99个章节,对应9种类型,其说明如表3.7所示。
表3.7 手册章节说明
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_34.jpg?sign=1738985541-Mo3eoSVWqsDwyk33BL2Xhs2BfNzZzteq-0-110f24323d517e603c437ecd67b016ef)
续表
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_35.jpg?sign=1738985541-MBjZvncWAxT4Xg8dfUOihdqnQieuzaTF-0-59058a2767d730079199b0886fa24b2b)
也可以使用“man N intro”命令查看某一章手册的说明信息,其中“N”的取值为1~9,与手册章节相对应。例如,查看第4章手册的说明信息如下:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_36.jpg?sign=1738985541-oQtJW8Ak7HJWtnmHGA9R3eHFa8YlK8PX-0-c2914b27d57e276f9b6f3f95af9d187f)
如果在不同的章节中有相同的说明项,则可以在使用man命令的同时指定手册章节。例如,passwd命令在man1和man5中均有帮助说明,若查看passwd命令在手册第5章中的帮助说明,则可以使用如下命令:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_37.jpg?sign=1738985541-10avLn7H05gBhI52ZXsgSjluHY12IcYI-0-2c65073236b0d4b7f8743d9bf64ebe60)
2.info 命令
info文档是Linux系统提供的另一种格式的帮助信息,与手册相比有更强的交互性。使用info命令可以查看Texinfo格式的帮助文档。
info命令的格式为:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_38.jpg?sign=1738985541-qXHISaMXDImN6AgAQmfn82Pgetm7EXcZ-0-4ac13927c63b61f0699b88517b1d2acc)
例如,查找passwd命令的帮助信息,命令行如下:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_39.jpg?sign=1738985541-dje6HUD92LtSIeXlRFmZRJbJqVTcSJSW-0-74f16dd59a035a53a6306abc053b3d3c)
info命令支持文件的链接跳转,使用方向键在显示的帮助文档中选择需要进一步查看的文件名,并按回车键,被选择的文件就会自动打开。
3.help 命令
Shell命令数量众多,但没有独立的帮助文件。help命令提供了对这些Shell命令的在线帮助支持。help命令格式如下:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_40.jpg?sign=1738985541-YxuGi0i8KPk1Io0g1wLQUuVtTJZMZU1n-0-88d7b7d1be6c8489add434ef4b6d08df)
选项意义如下。
-s:只显示命令格式。
例如,显示命令cd的命令行格式:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_41.jpg?sign=1738985541-Nmt5SbVXchmPV4WRsQEXX8lyoSKDQoGB-0-383d64fbf1115c38e8f7f731e6bf463e)
如果要查看命令cd的详细帮助信息,则命令行为:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_42.jpg?sign=1738985541-8qXY65EILo6jac26eB07Ctp2enAeB9xb-0-fa4efe9ce92f7a3e9fc64d91e363f840)
直接在待查询的命令后带上选项“--help”,也可查询该命令的帮助信息。例如,查询命令mkdir的帮助信息,命令行为:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_43.jpg?sign=1738985541-KLnMX3cx4yuBtFZcGwIkOuyxL0cd5Ag5-0-2f8a2f90d753ff9de2cf506bc661e915)
help命令也可以查询自身的帮助信息,例如:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_44.jpg?sign=1738985541-8bnWYNeYoqDWDh8OfO7BPLZ5oehiGP78-0-0c41920e3d7c0269a70eb416424baaff)
4.whereis命令
whereis命令,顾名思义,就是用来查询文件存储位置的命令,通常用来查找一个命令的二进制文件、源文件或帮助文件在系统中的位置。whereis 命令的格式为:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_45.jpg?sign=1738985541-riHGX5nBEaxGdmN8jZS7MPOZ3CLu3TjT-0-21e8c2a76b9ecfadffb8f16c02fecbdd)
其可用选项意义如下。
● -b:只查找二进制文件。
● -m:只查找帮助文件。
● -s:只查找source文件。
如果不带任何选项,则查找并显示所有相关文件。例如,查找命令mkdir的相关文件:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_46.jpg?sign=1738985541-VfxMdzAO8ibKBtGG5IqAGHteWopsGMZl-0-527533663099104e505a53cac6dee6f5)
只查找与命令mkdir相关的二进制文件:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_47.jpg?sign=1738985541-EMEsjtTe2je6pDk3DdsGuxukEXlzP8YH-0-5d0007880c9e64efae0cccd03d534eb4)
只查找与命令mkdir相关的帮助文件:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_48.jpg?sign=1738985541-pJAsVL6L5nFdyS342Oy0qmkvIyzzzNV3-0-be5e531a77f602e283ca2824fa7e104f)
5.whatis命令
与man命令或info命令相比,whatis命令可以提供更加简洁的帮助信息。whatis命令在whatis数据库中进行查找,并显示与所输入的关键词相关的信息。
在使用whatis命令前应建立whatis数据库。该数据库只有系统管理员才能建立,建立所需的时间视系统软/硬件性能而定。建立whatis数据库的命令行为:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_49.jpg?sign=1738985541-sSvvNuM9OTpItWGk7XiH4oMWpJylKua3-0-de0601544a815421db51a8dd77b3439c)
whatis数据库建立后,即可使用whatis命令进行查询。例如,查询cd命令的帮助信息:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_50.jpg?sign=1738985541-RoDJlOPB1SfQ1zwCv3wSHOeM2m2vaqk0-0-5c9b33cb336c7f431ffcf2a5990a6683)
6.apropos命令
apropos命令在whatis数据库中进行搜索,找出并显示包含所输入的字符串的所有数据。apropos命令基于字符串,而whatis命令基于关键词,因而apropos命令通常会显示比whatis命令更多的信息。例如,查询cd命令的帮助信息:
![](https://epubservercos.yuewen.com/A249D2/17493186706224506/epubprivate/OEBPS/Images/txt004_51.jpg?sign=1738985541-TzEBzpRyGEJssZ5DfY546pZ5IK6t0321-0-0240b89c42ee311de9614cb9dc77fafe)