Chapter 1 - 访问命令行
1.1 使用本地控制台访问命令行
1.1.1 bash shell
命令行是基于文本的界面(CLI),可用于向计算机系统输入指令。Linux命令行由名为shell的程序提供。RHEL中供用户使用的默认shell为GNU Bourne-Again Shell(bash)。
如果以交互方式使用shell,它在等待用户输入命令时显示一个字符串。这称为shell提示符。普通用户启动shell时,默认提示符的结尾是$
字符。如果以超级用户root运行shell,则$
替换为#
。
使用bash执行命令可以非常强大。bash shell提供了脚本语言,可支持自动化任务。shell还提供额外功能,可以简化或实现利用图形化工具难以高效完成的操作。
1.1.2 虚拟控制台
用户通过终端访问bash shell。终端提供键盘供用户输入,也提供显示用于输出。在基于文本的安装中,这可以是Linux计算机的物理控制台、硬件键盘和显示。也可通过串行端口配置终端访问。
访问shell的另一种方式是通过虚拟控制台。Linux计算机的物理控制台支持多个虚拟控制台,它们作为单独的终端运行。每个虚拟控制台均支持独立的登陆会话。
如果提供图形环境,它将在RHEL7的第一个虚拟控制台中运行。而另外五个文本登陆提示符在控制台二至六(如果图形环境关闭,则为控制台一至五)中可用。在图形环境运行时,通过按住Ctrl + Alt并按功能键(F2到F6),来访问虚拟控制台上的文本登陆提示符。按Ctrl + Alt + F1返回第一个虚拟控制台和图形桌面。
1.1.2 shell基础知识
在shell提示符下输入的命令由三个基本部分组成:
- 要运行的命令
- 用于调整命令行为的选项
- 通常作为命令的目标的参数
命令是要运行的程序的名称。其后可能跟着一个或多个选项,这些选项用于调整该命令的行为或其作用。选项通常以一个或两个破折号开头(例如:-a
或--all
),以将其与参数区分。命令后面可能也会跟着一个或多个参数,这些参数通常用于指明应在其中运行命令的目标。
要有效地使用命令,用户需要了解命令接受的选项和参数,以及它们正确的排列顺序(命令的语法)。大多数命令都包含--help
选项。这可使命令打印其作用的说明,即介绍命令的语法、其接受的选项列表及其作用的“用法语句”。
用法语句可能看起来比较复杂,难以读懂。基本惯例如下:
- 方括号[]括起的是可选项目。
- …前面的任何内容均表示该类型项目的任意长度列表。
- 以竖线|分隔的多个项目表示只能指定其中一个项目。
尖括号中的文本表示变量数据。例如filename表示“在此处插入您要使用的文件名”。又是,这些变量会简单写成大写字母,如FILENAME。
注意:
命令的man page中有一个SYNOPSIS部分。它提供有关该命令语法的信息。通过
man 7 man-pages
查看相关信息。
当用户使用完shell并希望退出时,可以通过多种方式结束会话。exit
命令终止当前的shell会话。另一种结束会话的方式是按Ctrl + D。
1.2 使用桌面访问命令行
1.2.1 GNOME桌面环境
桌面环境是Linux系统上的图形用户界面。RHEL7中默认的桌面环境由GNOME3提供。它在由X Window System提供的图形框架基础上,为用户提供了集成桌面和统一开发平台。
GNOME Shell为GNOME桌面环境提供核心用户界面功能。gnome-shell应用可高度自定义。默认情况下,RHEL7用户使用gnome-shell的“GNOME Classic”主题,它与GNOME2桌面环境相似。另一可用选项是“现代”GNOME3主题,供上游GNOME项目使用。各个主题始终都可在登陆时进行选择,只需在输入用户密码时选择登陆按钮旁边的齿轮图标即可。
新用户第一次登陆时,系统将运行一个初始设置程序,帮助用户配置基本的账户设置。随后启动GNOME帮助应用,显示GNOME使用入门屏幕。次屏幕包含视频和文档,帮助指导新用户熟悉GNOME3环境。GNOME帮助可以通过以下方式快速启动:在gnome-shell中按F1,选择应用文档帮助,或者运行yelp
命令。
快捷键:
Super + M:显示消息托盘。
Super:显示活动概览。
1.2.2 工作区
工作区是拥有不同应用窗口的独立桌面屏幕。它们可以用来按任务将打开的应用窗口分组,从而整理工作环境。
使用活动概览有一个优点,可以单击窗口并在当前工作区和其他工作区之间拖动。
快捷键:
Ctrl + Alt + ↑或Ctrl + Alt + ↓:切换工作区。
1.2.3 启动终端
当终端窗口打开后,将为启动该图形终端程序的用户显示shell提示符。shell提示符和终端窗口的标题栏将指示当前用户名、主机名和工作目录。
1.2.4 锁定屏幕或注销
快捷键:
Ctrl + Alt + L:锁定屏幕。
1.2.5 关机或重启系统
快捷键:
Ctrl + Alt + Del:关机或重启。
1.3 使用Bash Shell执行命令
1.3.1 基本的命令语法
键入到shell中的每一字符串最多有三个部分:命令、选项(以-
或--
开头),以及参数。键入到shell中的每个词语通过空格相互隔开。命令是系统中安装的程序的名称。每个命令拥有自己的选项和参数。
用户准备好执行命令时,按下Enter。每一命令在单独的一行中键入,系统会显示各个命令的输出,然后再显示shell提示符。如果用户希望在一行中键入多个命令,则可以使用;
作为命令分隔符。分号是一类称为元字符的字符的成员,对于bash具有特殊的含义。
1.3.2 Tab补全
Tab补全允许用户在提示符下键入足够的内容以使其唯一后快速补全命令或文件名。如果键入的字符不唯一,则按Tab键两次可显示以键入的字符为开头的所有命令。
Tab补全可以用于在键入文件名作为命令的参数时将它们补全。按Tab键时,它将尽可能将文件名补充完整。再按一次Tab时,shell将列出与当前模式匹配的所有文件。键入额外字符直到名称唯一为止,然后使用Tab补全结束该命令行。
许多命令可以通过Tab补全匹配参数和选项。键入选项部分内容后使用Tab补全可以将选项补充完整,而无需大量的键入操作。
1.3.3 命令历史记录
history
命令显示之前执行的命令的列表,带有命令编号作为前缀。
!
是元字符,用于扩展之前的命令而不必重新键入它们。!NUMBER
扩展至与指定编号匹配的命令。!STRING
扩展至最近一个以指定字符串开头的命令。
方向键可用于在shell历史记录中的之前命令行之间导航。↑编辑历史记录列表中的上一个命令;↓编辑历史记录列表中的下一个命令。←和→可在当前编辑的命令行中向左和向右移动光标。
Esc + .组合键可使shell将上一命令的最后一个单词复制到当前命令行中的光标所处位置。如果重复使用,它将继续转到更早的命令。
1.3.4 编辑命令行
快捷键
Ctrl + A:跳到命令行的开头。
Ctrl + E:跳到命令行的末尾。
Ctrl + U:将光标处到命令行开头的内容清除。
Ctrl + K:将光标处到命令行末尾的内容清除。
Ctrl + ←:跳到命令行中前一字的开头。
Ctrl + →:跳到命令行中后一字的开头。
Ctrl + R:在历史纪录列表中搜索某一模式的命令。