开始使用Shell提示符
如果所使用的Linux系统没有图形用户界面(或者目前暂时无法使用),那么在登录之后将会看到一个 Shell提示符。此时,通过Shell输入命令将是使用Linux系统的主要方式。
对于普通用户来说,默认的提示符是一个简单的美元符号:$
,而对于root用户来说,默认的提示符是一个#
。
在大多数Linux系统中,$
和#
提示符都跟在用户名、系统名称和当前目录名之后。例如,将名为aliyun的计算机上的/usr/share/作为用户jackma的当前工作目录,其登录提示符如下所示:
[ jackma@aliyun share]$
此时,[ jackma@aliyun share]$
的各部分含义如下:
jackma
是当前登录用户的用户名。
aliyun
是计算机的名称。
share
是当前工作目录的名称。
了解Shell命令语法
Shell命令是在Linux系统中操作和控制计算机的基本工具。下面是Shell命令的一般语法:
command [options] [arguments]
command
是要执行的命令的名称。
options
是可选的命令选项,用于修改命令的行为或提供额外的功能。
arguments
是命令的参数或操作对象。
可选命令[options]
在Shell命令语法中,[options]
和[arguments]
部分是可选的。
[options]
是用于修改命令行为或提供额外功能的标志。通常以单个短横线-
或双短横线--
开头,后跟一个或多个字母、数字或其他特定字符。不同的命令具有不同的选项,并且可以根据需要组合使用多个选项。
例如,ls
命令有一些常用的选项:
-l
:以长格式显示文件和目录的详细信息。
-a
:包括显示隐藏文件和目录。
-r
:按照相反的顺序进行排序。
要使用[options]
,可以将其放置在命令名称之后,如下所示:
ls -l -a
另一种常见的做法是将多个选项组合在一起,以减少输入。可以使用单个短横线,并将所有选项连在一起:
ls -la
上面两种写法是等效的。除了单个短横线-
,双短横线--
后面通常跟完整单词,如:
ls --help
可选参数[arguments]
[arguments]
是命令的参数或操作对象。它们是命令的输入,用于指定命令要操作的文件、目录或其他数据。
例如,cp
命令需要两个参数来指定源文件和目标文件的路径:
cp source_file destination_file
在这个例子中,source_file
是要复制的源文件的路径,而destination_file
是目标文件的路径,即将源文件复制到的位置。
参数的具体用法取决于不同的命令和操作。
值得注意的是,不是所有的命令都需要选项或参数。某些命令可能没有选项,而只需要一个简单的命令名称就可以完成操作,例如date命令用于显示当前日期和时间:
date
查看所有的Shell命令
在Shell中,要找到输入的命令,Shell会在所谓的"路径"中进行查找。如果命令不在路径上,就需要输入命令位置的完整标识。
一种运行命令的方法是输入完整路径或者绝对路径来执行,例如,在/bin目录中运行date命令的方式如下:
$ /bin/date
这种方法对于位于路径较长的目录中的命令来说并不方便。更好的做法是将命令存储在已知的目录中,并将这些目录添加到Shell的PATH
环境变量中。PATH
环境变量是由包含目录列表的字符串组成,当输入命令时,Shell会检查该列表,以找到相应的命令。
要查看当前的路径,可以输入以下命令:
echo $PATH
输出的结果将显示一个普通Linux用户的常见默认路径。路径列表中的目录以冒号(:)分隔。大多数Linux系统提供的用户命令都存储在/bin、/usr/bin或者/usr/local/bin目录中。而/sbin和/usr/sbin目录包含了管理命令(某些Linux系统可能没有将这些目录放置在普通用户路径中)。
通过将命令所在的目录添加到PATH环境变量中,就可以直接在命令行中输入命令名称,而无需输入完整路径来执行命令。这样可以提高命令的使用便捷性。
接下来查看某个文件夹下的所有命令:
ls /usr/bin
命令历史记录
在Shell中,可以使用history命令查看之前执行过的命令列表。该命令将显示一个带有行号的历史命令列表,每条命令都与其相应的行号对应。
history
要重复执行以前的命令,可以使用以下方法之一:
使用!!符号来执行最近一条命令。例如,输入!!并按回车键,即可重复执行上一条命令。
使用!n来执行特定行号的命令,其中n是命令在历史记录中的行号。例如,输入!5并按回车键,即可执行第5条命令。
或者按上下键挑选最近的命令。
元字符
在Shell中,元字符是具有特殊含义的字符,用于控制命令行的解析和执行方式。它们在Shell中用于模式匹配、重定向输入输出、管道操作等。以下是一些常见的Shell元字符:
1.通配符(Wildcard):
*
:匹配任意数量的字符(包括零个字符)。
?
:匹配单个字符。
2.重定向:
>
:将命令的输出重定向到文件,覆盖已有内容。
>>
:将命令的输出追加到文件末尾。
<
:将文件内容作为命令的输入。
3.管道(Pipe):
|
:将一个命令的输出作为另一个命令的输入。
4.转义字符(Escape Character):
\
:用于转义下一个字符,以防止其被解释为特殊字符。
5.引号:
'text'
:单引号,用于完全保留引号内的文本,其中的特殊字符不会被解释。
"text"
:双引号,用于保留引号内的文本,但某些特殊字符(如变量)会被解释。
6.命令分隔符:
;
:用于分隔多个命令,让它们按顺序执行。
这些元字符在Shell命令中起到重要的作用,可以进行模式匹配、文件重定向、输入输出控制等操作。当使用这些元字符时,需要注意特殊字符的转义和引号的使用,以确保命令的正确执行和预期结果。