今天开始介绍Linux的常用命令,通过学习了解Shell命令的基本格式,可以掌握常用的Shell基础命令、命名历史、名称补全的方法,及联机帮助命令的使用方法;理解文件操作命令、目录及其操作的方法;熟练运用Linux常用命令完成对系统的基本操作。
全长近两万字,欢迎关注、点赞、收藏
本文足够严谨,非常适合学习与回顾Linux的常用命令
在 Linux 和 Unix 系统中,Shell 是一个命令解释器,它充当用户与操作系统内核之间的桥梁。用户通过 Shell 输入命令,Shell 解释这些命令并将其传递给操作系统内核执行。Shell 不仅可以执行单个命令,还可以执行复杂的脚本,实现自动化任务。(我们这里作有关shell的介绍,关于shell脚本的解释在这里放置就跑题了)
Bourne Shell (sh):
Bash (Bourne-Again Shell):
Korn Shell (ksh):
C Shell (csh):
Z Shell (zsh):
Shell 命令可以分为两类:内置命令和外部命令。
内置命令:由 Shell 本身提供,不需要调用外部程序。例如:
cd
- 改变当前目录echo
- 输出文本export
- 设置环境变量alias
- 创建命令别名source
- 执行脚本文件外部命令:由独立的可执行文件提供,通常位于 /bin
, /usr/bin
, /usr/local/bin
等目录中。例如:
ls
- 列出目录内容grep
- 在文件中搜索文本find
- 搜索文件ps
- 显示进程状态top
- 显示系统资源使用情况who
命令是 Linux 和 Unix 系统中的一个实用工具,用于显示当前登录到系统的用户信息。这个命令可以提供多种有用的信息,包括用户名、登录终端、登录时间等。
who
运行 who
命令后,输出通常包含以下几列:
who
命令支持多个选项,可以用来获取更多或更具体的信息:
-a
或 --all
:显示所有信息,包括系统引导时间和当前运行级别。-b
或 --boot
:显示上次系统启动的时间。-d
或 --dead
:显示已死进程的进程表项。-H
或 --heading
:显示列标题。-m
或 --message
或 --writeme
:显示当前用户的登录信息。-p
或 --process
:显示活动进程的进程表项。-q
或 --count
:显示登录的用户名和总数。-r
或 --runlevel
:显示当前的运行级别。-s
或 --short
:显示默认的简短信息(默认行为)。-t
或 --time
:显示最后一次系统时钟更改的时间。-u
或 --users
:显示当前登录的用户及其空闲时间。-T
或 --status
:显示用户的状态(+ 表示可写,- 表示不可写)。显示所有信息:
who -a
显示上次系统启动的时间:
who -b
显示当前登录的用户及其空闲时间:
who -u
显示登录的用户名和总数:
who -q
显示当前用户的登录信息:
who -m
显示列标题:
who -H
who
命令是一个非常有用的工具,可以帮助系统管理员和普通用户了解当前系统中谁在登录以及他们的登录信息。通过使用不同的选项,可以获取更多详细的系统状态信息。
echo
命令用于在终端或脚本中输出文本或变量内容。它是 Linux 和 Unix 系统中非常常用的一个命令。
echo [选项] [字符串]
基本格式:
echo "Hello, World!"
输出变量:
name="John Doe"
echo "Hello, $name"
基本输出:
echo "Hello, World!"
输出变量:
name="John Doe"
echo "Hello, $name"
不输出换行符:
echo -n "Hello, "
echo "World!"
启用转义字符:
echo -e "Hello,\nWorld!"
echo
命令会在输出的末尾自动添加一个换行符。使用 -n
选项可以防止这一点。\n
(换行)、\t
(制表符)等。基本输出:
$ echo "Hello, World!"
Hello, World!
输出变量:
$ name="John Doe"
$ echo "Hello, $name"
Hello, John Doe
不输出换行符:
$ echo -n "Hello, "
Hello, $ echo "World!"
World!
启用转义字符:
$ echo -e "Hello,\nWorld!"
Hello,
World!
echo
命令非常简单但功能强大,主要用于在终端或脚本中输出文本和变量内容。通过使用 -n
和 -e
选项,可以控制输出格式和内容。
date
命令在 Linux 和 Unix 系统中用于显示或设置系统日期和时间。这个命令非常有用,特别是在脚本中需要处理日期和时间时。
date [选项] [+格式]
显示当前日期和时间:
date
显示自定义格式的日期和时间:
date +"%Y-%m-%d %H:%M:%S"
设置系统日期和时间(需要 root 权限):
sudo date MMDDhhmm[[CC]YY][.ss]
cal
命令用于在终端中显示日历。它可以显示指定月份或整年的日历。
cal [选项] [月份 [年份]]
cal
显示指定月份的日历:
cal 10 2023
显示指定年份的全年日历:
cal 2023
clear
命令在 Linux 和 Unix 系统中用于清空终端屏幕,使终端窗口回到初始状态。这是一个非常简单但实用的命令,特别适合在终端中进行长时间操作时,清理屏幕以便更好地查看新的输出。
clear
clear
clear
假设你在终端中执行了一些命令,屏幕上有大量输出。你可以使用 clear
命令来清空屏幕,回到初始状态。
$ ls
file1.txt file2.txt file3.txt
$ echo "Hello, World!"
Hello, World!
$ clear
执行 clear
命令后,终端屏幕会被清空,光标会回到屏幕的顶部
如下所示:
$
cat
命令在 Linux 和 Unix 系统中用于显示文件内容、合并文件以及创建新的文件。它的名称来源于“concatenate”的缩写,意为连接或合并。
cat [选项] [文件...]
查看文件内容:使用cat filename可以将指定文件的内容输出到终端上。
连接文件:cat file1 file2 > combined_file会将file1和file2的内容连接起来,并将结果输出到combined_file中。
创建文件:可以使用cat > filename来创建文件,然后输入文本,按Ctrl+D来保存并退出。
显示文件:可以将cat与管道(|)结合使用,例如ls -l | cat会将ls -l的输出通过cat打印到终端上。
追加内容到文件:cat >> filename会将标准输入追加到文件filename的末尾。
显示多个文件的内容:cat file1 file2可以同时显示file1和file2的内容。
使用管道:cat filename | command将cat命令的输出作为另一个命令的输入。
查看文件的最后几行:cat filename | tail -n 10显示文件filename的最后10行。
制作镜像文件:cat /dev/fd0 > OUTFILE可以用来制作软盘的镜像文件。相反地,如果想把镜像文件写到软盘,可以使用cat IMG_FILE > /dev/fd0。
$
符号。^I
。cat命令可以查看,创建修改文件的内容。命令中使用>(大于符号)重定向用于创建一个新的文件,如果存在相同文件,则相同文件的内容会被覆盖,命令中使用>>(双大于符号)重定向用于给另外一个文件添加内容到文件的末尾,就是把内容往另外一个文件的文件尾部添加内容,不存在该文件也会创建一个文件在文件末尾添加内容。命令中使用<(小于符号)主要用于重定向输入,并把文件内容展示到屏幕上。
(首先明确一点,less命令是非常好用的命令)
more
和 less
是 Linux 和 Unix 系统中用于分页显示文件内容的命令。虽然它们的功能相似,但 less
比 more
更加灵活和强大。下面分别介绍这两个命令的基本用法和主要特点。
more
命令more [选项] [文件...]
[Press space to continue, 'q' to quit.]
,如果用户按错键,则会显示 [Press 'h' for instructions.]
。^L
(换页字符)时暂停的功能。-p
类似,不同的是先显示内容再清除其他旧资料。n
行开始显示文件内容。pattern
),然后从该字符串之后开始显示。more
。less
命令less [选项] [文件...]
more
类似,但 less
支持更多的导航和搜索功能。more
命令的百分比。less
输出的内容在指定文件中保存起来。tab
键显示为规定的数字空格。pattern
。pattern
。less
。more
命令:
less
命令:
head
和 tail
是 Linux 和 Unix 系统中用于显示文件内容的命令,分别用于显示文件的开头部分和结尾部分。这两个命令在处理日志文件、查看文件内容时非常有用。下面分别介绍 head
和 tail
命令的基本用法和主要特点。
head
命令head [选项] [文件...]
head
命令显示文件的前 10 行内容。NUM
行。如果 NUM
前有负号(-
),则显示除最后 NUM
行之外的所有行。NUM
个字节。如果 NUM
前有负号(-
),则显示除最后 NUM
个字节之外的所有字节。显示文件的前 10 行:
head filename
显示文件的前 5 行:
head -n 5 filename
显示文件的前 100 个字节:
head -c 100 filename
显示除最后 5 行之外的所有行:
head -n -5 filename
显示多个文件的前 10 行:
head file1 file2 file3
tail
命令(示例部分可以直接类比head命令)tail [选项] [文件...]
tail
命令显示文件的最后 10 行内容。NUM
行。如果 NUM
前有加号(+
),则显示从第 NUM
行开始的所有行。NUM
个字节。如果 NUM
前有加号(+
),则显示从第 NUM
个字节开始的所有字节。-f
选项一起使用,指定每次检查文件更新的间隔时间。touch
命令是 Linux/Unix 系统中一个非常基础且实用的命令,主要用于更新文件的时间戳或创建新的空文件。这个命令在日常的文件管理和维护工作中非常有用,尤其是在需要确保文件具有最新时间戳或创建临时文件的场景中。下面详细介绍一下 touch
命令的用法及其选项。
touch
命令基本功能touch
命令主要有两个核心功能:
touch
命令可以将该文件的访问时间(atime)和修改时间(mtime)更新为当前系统时间,同时保持文件内容不变。这对于需要定期更新文件时间戳以满足某些程序或服务的要求非常有用。touch
命令将会创建一个新的空文件。这是创建临时文件或初始化日志文件的一种简便方法。touch [选项] [文件...]
[[CC]YY]MMDDhhmm[.ss]
。STRING
指定的时间,支持多种时间格式。FILE
文件相同。创建新文件:
touch newfile.txt
如果 newfile.txt
不存在,将创建一个名为 newfile.txt
的空文件。
更新文件的时间戳:
touch existingfile.txt
如果 existingfile.txt
已经存在,将更新其访问时间和修改时间为当前系统时间。
设置文件的时间戳为指定时间:
touch -t 202301011200 existingfile.txt
将 existingfile.txt
的时间戳设置为 2023 年 1 月 1 日 12:00。
仅更新文件的访问时间:
touch -a existingfile.txt
仅更新 existingfile.txt
的访问时间。
仅更新文件的修改时间:
touch -m existingfile.txt
仅更新 existingfile.txt
的修改时间。
使用另一个文件的时间戳:
touch -r referencefile.txt targetfile.txt
将 targetfile.txt
的时间戳设置为与 referencefile.txt
相同。
创建多个文件:
touch file1.txt file2.txt file3.txt
同时创建 file1.txt
、file2.txt
和 file3.txt
三个空文件。
创建带有编号的文件:
touch file{1..5}.txt
创建 file1.txt
到 file5.txt
五个文件。
避免创建新文件:
touch -c nonexistantfile.txt
如果 nonexistantfile.txt
不存在,则不会创建新文件。
使用自定义时间格式:
touch -d "2023-01-01 12:00:00" existingfile.txt
将 existingfile.txt
的时间戳设置为 2023 年 1 月 1 日 12:00:00。
touch
命令会更新符号链接的目标文件的时间戳,而不是符号链接本身。如果需要更新符号链接的时间戳,可以使用 -h
选项。cp
命令是 Linux 和 Unix 系统中用于复制文件和目录的基本命令。它功能强大且灵活,可以处理从简单文件复制到复杂目录结构的复制任务。下面详细介绍 cp
命令的基本用法、常用选项和一些高级用法。
cp
命令基本功能cp
命令的主要功能是将一个或多个源文件或目录复制到指定的目标文件或目录。它可以用于备份文件、复制目录结构、更新文件等。
cp [选项] 源文件/目录 目标文件/目录
-dpR
选项的组合)。复制单个文件:
cp source.txt destination.txt
将 source.txt
复制为 destination.txt
。
将文件复制到目录中:
cp source.txt /path/to/directory/
将 source.txt
复制到 /path/to/directory/
目录中。
递归复制整个目录:
cp -r source_directory target_directory
将 source_directory
及其所有内容复制到 target_directory
中。
交互式复制并保留属性:
cp -ip source.txt destination.txt
交互式地复制 source.txt
到 destination.txt
,并保留文件属性。
强制覆盖已有文件:
cp -f source.txt existing_file.txt
强制覆盖 existing_file.txt
。
复制并重命名文件:
cp source.txt new_name.txt
将 source.txt
复制为 new_name.txt
。
同时复制多个文件到一个目录:
cp file1.txt file2.txt /path/to/directory/
将 file1.txt
和 file2.txt
复制到 /path/to/directory/
目录中。
使用通配符批量复制文件:
cp *.txt target_directory/
将当前目录下的所有 .txt
文件复制到 target_directory
目录内。
仅当源文件较目标文件新时复制:
cp -u source.txt destination.txt
仅当 source.txt
比 destination.txt
新时才进行复制。
创建文件的软链接:
cp -s source.txt link.txt
创建 source.txt
的软链接 link.txt
。
创建文件的硬链接:
cp -l source.txt hardlink.txt
创建 source.txt
的硬链接 hardlink.txt
。
复制稀疏文件:
cp --sparse=always sparse_file destination_file
确保复制的文件保持稀疏格式。
避免覆盖已存在的文件:
cp -n source.txt existing_file.txt
如果 existing_file.txt
已经存在,则不会被覆盖。
保留文件属性进行复制:
cp -p source.txt destination.txt
复制 source.txt
到 destination.txt
,并保留文件的权限、所有者和时间戳等属性。
显示详细的复制过程:
cp -v file1.txt file2.txt
显示详细的复制过程,包括复制的文件名和目录名。
cp
命令无法用于跨设备(如不同磁盘分区、网络共享)的文件或目录移动,如果需要进行这样的操作,请使用 mv
命令。cp
命令会复制符号链接的目标文件,而不是符号链接本身。如果需要复制符号链接,可以使用 -d
选项。mv
命令的主要功能是将一个或多个源文件或目录移动到指定的目标文件或目录,或者将文件重命名。它可以用于文件管理、备份和目录结构调整等场景。
mv [选项] 源文件/目录 目标文件/目录
CONTROL
可以是 none
, numbered
, existing
, simple
等。重命名文件:
mv oldname.txt newname.txt
将 oldname.txt
重命名为 newname.txt
。
将文件移动到目录中:
mv file.txt /path/to/directory/
将 file.txt
移动到 /path/to/directory/
目录中。
将多个文件移动到目录中:
mv file1.txt file2.txt /path/to/directory/
将 file1.txt
和 file2.txt
移动到 /path/to/directory/
目录中。
交互式移动并保留属性:
mv -i file.txt /path/to/directory/
交互式地移动 file.txt
到 /path/to/directory/
,如果目标文件已存在,会提示用户是否覆盖。
强制覆盖已有文件:
mv -f file.txt existing_file.txt
强制覆盖 existing_file.txt
。
仅当源文件较目标文件新时移动:
mv -u file.txt destination.txt
仅当 file.txt
比 destination.txt
新时才进行移动。
移动并重命名文件:
mv file.txt /path/to/directory/newname.txt
将 file.txt
移动到 /path/to/directory/
并重命名为 newname.txt
。
使用通配符批量移动文件:
mv *.txt /path/to/directory/
将当前目录下的所有 .txt
文件移动到 /path/to/directory/
目录内。
移动目录:
mv source_directory /path/to/target_directory/
将 source_directory
移动到 /path/to/target_directory/
目录中。
移动多个目录到一个目标目录:
mv dir1 dir2 /path/to/target_directory/
将 dir1
和 dir2
移动到 /path/to/target_directory/
目录中。
创建备份文件:
mv -b file.txt /path/to/directory/
将 file.txt
移动到 /path/to/directory/
,如果目标文件已存在,会创建一个备份文件。
显示详细的移动过程:
mv -v file1.txt file2.txt /path/to/directory/
显示详细的移动过程,包括移动的文件名和目录名。
使用 --target-directory
选项:
mv -t /path/to/target_directory/ file1.txt file2.txt
将 file1.txt
和 file2.txt
移动到 /path/to/target_directory/
目录中,这种方式在移动多个文件时特别方便。
避免覆盖已存在的文件:
mv -n file.txt existing_file.txt
如果 existing_file.txt
已经存在,则不会被覆盖。
跨文件系统移动:
mv -v /mnt/source/file.txt /mnt/destination/
跨文件系统移动文件时,mv
会先将文件复制到目标位置,然后删除源文件。这对于移动大文件或目录时需要注意,因为它可能需要额外的磁盘空间。
mv
命令会移动符号链接的目标文件,而不是符号链接本身。如果需要移动符号链接,可以使用 -T
选项。-b
选项时,备份文件的默认后缀是 ~
,可以通过 --backup=CONTROL
选项指定不同的备份策略。mv
命令用于移动文件和目录以及重命名文件。通过灵活运用 mv
命令的各种选项,可以高效地完成文件管理任务。
rm命令是Linux中用于删除文件或目录的常用命令。由于该命令会永久删除文件,因此在使用时需要格外小心。这里将介绍rm命令的基本用法和一些重要的选项。
rm [options] name
其中,name可以是一个或多个文件或目录的名称。options是命令选项,用于修改命令的行为。
-i:在删除文件或目录之前,系统会提示用户确认是否删除。
-f:强制删除文件或目录,即使文件属性为只读,也不会提示用户确认。
-r:递归删除,用于删除目录及其包含的所有内容,包括所有子目录和文件。
删除单个文件时,可以直接使用rm命令,例如:
rm test.txt
如果要删除目录及其内容,需要使用-r选项:
rm -r homework
删除当前目录下的所有文件和目录,可以使用:
rm -r *
或者使用-rf选项来强制删除,不会有任何提示:
rm -rf *
由于rm命令删除的文件无法恢复,所以在使用时必须非常谨慎。在删除重要文件或目录之前,应该确认是否有备份。如果不确定,可以使用-i选项来逐一确认,以避免意外删除。
在 Linux 和 Unix 系统中,文件和目录管理是日常操作的重要部分。以下是一些常用的命令及其基本功能和用法的概述,包括 cd
、pwd
、ls
、ls -F
、mkdir
和 rmdir
命令。
cd
命令功能:cd
命令用于更改当前工作目录。
语法:
cd [目录路径]
基本用法:
cd /path/to/directory
:切换到指定的绝对路径目录。cd relative/path/to/directory
:切换到相对于当前目录的路径。cd ~
:切换到当前用户的主目录。cd ..
:切换到当前目录的上一级目录。cd -
:切换到上一个工作目录。cd
:不带参数时,默认切换到当前用户的主目录。pwd
命令功能:pwd
命令用于显示当前工作目录的绝对路径。
语法:
pwd [选项]
常用选项:
-L
:显示逻辑路径,即包含符号链接的路径(默认行为)。-P
:显示物理路径,即不包含符号链接的实际路径。ls
命令功能:ls
命令用于列出目录内容。
语法:
ls [选项] [目录或文件]
常用选项:
-a
:显示所有文件,包括以 .
开头的隐藏文件。-d
:显示目录本身的信息,而不是目录内容。-l
:以长格式显示文件和目录信息,包括权限、链接数、所有者、组、大小、修改日期和时间等。-h
:以人类可读的格式显示文件大小(例如 KB、MB、GB)。-R
:递归地列出所有子目录的内容。-t
:按修改时间排序,最新的文件或目录排在前面。-S
:按文件大小排序,最大的文件或目录排在前面。-r
:反转排序顺序。-i
:显示文件的 inode 编号。ls -F
命令功能:ls -F
命令用于在列出的文件名称后加一符号,以区分不同类型的文件。
语法:
ls -F [目录或文件]
符号说明:
/
:表示目录。*
:表示可执行文件。@
:表示符号链接。=
:表示套接字。|
:表示命名管道。mkdir
命令功能:mkdir
命令用于创建新目录。
语法:
mkdir [选项] 目录
常用选项:
-p
:递归创建目录,如果父目录不存在,会自动创建。-m
:设置新目录的权限(八进制数字表示)。-v
:显示创建目录的详细信息。rmdir
命令功能:rmdir
命令用于删除空目录。
语法:
rmdir [选项] 目录
常用选项:
-p
:递归删除目录,如果父目录变为空目录,也会被删除。-v
:显示删除目录的详细信息。在 Linux 和 Unix 系统中,history
命令和 alias
命令都是非常有用的工具,可以帮助用户更高效地管理和执行命令。下面分别介绍这两个命令的功能和用法。
history
命令功能:history
命令用于显示和管理命令历史记录。它允许用户查看之前执行过的命令,并可以重新执行这些命令。
语法:
history [选项] [数量]
常用选项:
-c
:清除命令历史记录。-d <偏移量>
:删除指定位置的命令。-a
:将新的命令添加到历史文件中。-n
:从历史文件中读取新的命令。-r
:从历史文件中读取所有命令。-w
:将当前历史列表写入历史文件。-p
:执行历史扩展。-s
:将指定的命令添加到历史列表中。示例:
history
:显示所有的命令历史记录。history 10
:显示最近的 10 条命令。history -c
:清除所有命令历史记录。history -d 5
:删除第 5 条命令。1、重复前一个命令,有4种方法
2、 !:0 执行前一条命令(去除参数)
3、 Ctrl + n显示当前历史中的下一条!命令,但不执行
4、 Ctrl + j执行当前命令
5、 !n 执行history命令输出对应序号为n的命令
6、 !-n执行history历史中倒数第n个命令
7、 !string 重复前一个以“string”字符串开头的命令
8、 !?string 重复前一个包含string字符串的命令
9、 !string:p 仅打印命令历史,而不执行
10、 !$:p 打印输出!$(上一条命令的最后一个参数)的内容
11、 !*:p 打印输出!*(上一条命令的所有参数)的内容
12、 ^string 删除上一条命令中的第一个string
13、 ^string1^string2将上一条命令中的第一个string1替换为string2
14、 !:gs/string1/srting2 将上一条命令中所有的string1都替换为string2
15、使用方向键↑↓键来上下浏览从前输入的命令
16、Crtl + r来在命令历史中搜索命令
进入(reverse-i-search)`':模式
17、 Crtl + g 从历史搜索模式退出
18、 重新调用前一个命令中最后一个参数,3种方法
!$
Esc . (点击Esc键后松开,然后点击.键)
Alt+. (按住Alt键的同时点击.键),在一些终端软件中屏蔽了Alt功能键,需要开启alt
alias
命令功能:alias
命令用于创建命令的别名,使得用户可以通过简短的命令来执行复杂的命令或命令组合。
语法:
alias [别名]=[命令]
常用选项:
alias
:显示所有已定义的别名。unalias [别名]
:删除指定的别名。示例:
alias ll='ls -l'
:创建一个别名 ll
,执行 ls -l
命令。alias cdd='cd /path/to/directory'
:创建一个别名 cdd
,切换到指定的目录。unalias ll
:删除别名 ll
。可以将常用的别名定义写入用户的 shell 配置文件中,例如 .bashrc
或 .zshrc
,这样每次打开终端时,这些别名就会自动生效。
示例: 编辑 .bashrc
文件,添加以下内容:
alias ll='ls -l'
alias cdd='cd /path/to/directory'
alias grep='grep --color=auto'
保存文件后,运行 source ~/.bashrc
使配置生效。
别名不仅可以简化常用的简单命令,还可以用于管理复杂的命令组合。
示例:
alias backup='rsync -avz --delete /source/directory/ /destination/directory/'
这个别名 backup
用于执行一个复杂的 rsync
命令,备份指定的目录。
别名不生效:
.bashrc
)。source ~/.bashrc
使配置文件生效。清除命令历史:
history -c
清除当前会话的历史记录。> ~/.bash_history
清除历史文件中的记录。恢复删除的命令:
history -r
从历史文件中重新加载命令。cd
、exit
、history
等。type
命令来检查一个命令是否是内建命令。示例:
$ type cd
cd is a shell builtin
/bin
、/usr/bin
、/sbin
、/usr/sbin
等目录中。这些命令在需要时才会被加载到内存中,因此执行速度相对较慢。ls
、grep
、find
等。type
命令来检查一个命令是否是外部命令。示例:
$ type ls
ls is /usr/bin/ls
help
命令help
命令用于查看 shell 内建命令的帮助信息。help [命令]
help
:显示所有内建命令的帮助信息。help cd
:显示 cd
命令的帮助信息。示例:
$ help cd
cd: cd [-L|[-P [-e]]] [dir]
Change the current directory to DIR. The default DIR is $HOME.
...
man
命令man
命令用于查看命令的手册页,包含命令的详细说明、用法、参数、示例等信息。man [选项] 命令
-a
:显示所有手册页,而不是只显示第一处找到的。-f
:只显示命令的功能而不显示详细的说明文件。-k
:搜索手册页的关键词。-P
:指定显示手册所使用的分页程序。-S
:指定查找手册页的章节列表。man ls
:显示 ls
命令的手册页。man -a ls
:显示所有 ls
命令的手册页。man -k grep
:搜索包含 grep
关键词的手册页。示例:
$ man ls
LS(1) User Commands LS(1)
NAME
ls - list directory contents
SYNOPSIS
ls [OPTION]... [FILE]...
DESCRIPTION
List information about the FILEs (the current directory by default).
Sort entries alphabetically if none of -cftuvSUX nor --sort is specified.
Mandatory arguments to long options are mandatory for short options too.
...
info
命令info
命令用于查看命令的详细信息,通常比 man
命令提供的信息更丰富,更适合阅读和导航。info [选项] 命令
info ls
:显示 ls
命令的详细信息。info info
:显示 info
命令的详细信息。示例:
$ info ls
File: coreutils.info, Node: ls invocation, Next: dir invocation, Prev: Working context, Up: Directory listing
10.1 `ls': List directory contents
===============================
`ls' lists the files in the working directory:
$ ls
Makefile notes todo
By default, directories are listed as single entries, not recursively. To see
all the files in all the directories, use `-R':
$ ls -R
.:
dir file
./dir:
subfile
The output shows that the working directory contains two files and a
subdirectory, `dir'. The subdirectory in turn contains one file, `subfile'.
...
都看到这里了,你的关注与点赞是我最大的动力!!! 记得收藏哦