目录
[2. cd命令](#2. cd命令)
[4.mkdir 命令](#4.mkdir 命令)
[5. rmdir 命令](#5. rmdir 命令)
[6.rm 命令](#6.rm 命令)
[27.du 命令](#27.du 命令)
[28.free 使用](#28.free 使用)
[32.traceroute 命令](#32.traceroute 命令)
[33.netstat 命令](#33.netstat 命令)
[34.iptables 命令](#34.iptables 命令)
[35.crontab 命令](#35.crontab 命令)
[36.chmod 命令](#36.chmod 命令)
[37.chown 命令](#37.chown 命令)
[38.ln 命令](#38.ln 命令)
[39.grep 命令](#39.grep 命令)
[40.sed 命令](#40.sed 命令)
[41.awk 命令](#41.awk 命令)
[42.sort 命令](#42.sort 命令)
[43.uniq 命令](#43.uniq 命令)
[44.wc 命令](#44.wc 命令)
[45.diff 命令](#45.diff 命令)
[46.nohup 命令](#46.nohup 命令)
[47.screen 命令](#47.screen 命令)
[48.tee 命令](#48.tee 命令)
[49.history 命令](#49.history 命令)
前言
前面我已经整理100个常用命令,这里整理这些命令具体使用。
50在(三)https://blog.csdn.net/aicsswo/article/details/136782377?spm=1001.2014.3001.5502
常用命令
1.ls
命令
是Linux系统中用于列出目录内容的基本命令。具体使用方式如下:
- 基本用法 :输入
ls
,会按字母顺序列出当前目录下的文件和子目录。不添加任何参数时,这将简单地显示文件名。
bashls
- 显示所有文件 :使用
-a
选项,可以显示所有文件及目录,包括隐藏的(以.
开头)文件。
bashls -a
- 只列出目录 :加上
-d
选项,将只列出目录本身,而不显示其内部的内容。
bashls -d
- 长格式显示 :通过
-l
选项,可以得到文件和目录信息的长列表,包括权限、所有者、大小、创建时间等详细数据。
bashls -l
- 倒序显示 :利用
-r
选项,可以让文件和目录以相反的顺序显示出来。
bashls -r
- 按修改时间排序 :
-t
选项会根据文件的修改时间进行排序,最新的文件会首先显示。
bashls -t
- 不显示特定文件 :
-A
选项的作用类似于-a
,但它不会列出当前目录(.
)和父目录(..
)。
bashls -a
- 符号说明 :
-F
选项在列出的文件名后加上特定的符号,例如可执行文件加上*
,目录加上。
bashls -F
- 递归显示 :如果需要显示目录及其子目录中的所有文件,可以使用
-R
选项来进行递归显示。
bashls -R
2. cd
命令
是用于在文件系统中切换目录的,它允许用户在不同的目录之间导航,无论是在同一磁盘的不同目录还是在不同的磁盘分区。以下是一些常见的使用方法:
- 切换到同一磁盘的另一个目录:
- 直接输入目标目录的路径来切换到该目录。例如,如果要切换到名为"documents"的目录,可以输入
bashcd documents
- 使用相对路径进行导航。例如,要进入当前目录下的"subfolder"目录,可以使用
bashcd subfolder
- 返回上一级目录:
- 使用
cd..
命令可以返回到上一级目录。
bashcd..
- 切换到不同的磁盘分区:
- 首先使用盘符后跟一个冒号(如
D:
)来切换到不同的磁盘分区。- 然后使用
cd
命令加上目录名来进入该分区下的某个目录。
- 绝对路径与相对路径:
- 绝对路径是从根目录开始的完整路径,例如
bashcd /path/to/directory
- 相对路径是相对于当前工作目录的路径,例如
cd relative/path/to/directory
。
- 快速回到主目录:
无论当前在哪个目录,使用
bashcd ~
或单独
cd
命令都可以快速返回用户的主目录。
bashcd
- 进入根目录:
- 通过输入
cd /
可以进入系统的根目录。
bashcd /
3.pwd
命令
用于显示当前工作目录的绝对路径。这是一项非常实用的功能,尤其是在使用复杂的文件系统或者进行频繁目录切换时,能够帮助用户快速了解当前所在的位置。下面是一些常用的pwd
命令使用方法:
- 基本使用 :直接在终端中输入
pwd
,回车后系统会显示当前的工作目录。例如,如果你在终端中输入pwd
,它可能会返回/home/username
,这表明你当前位于用户名为"username"的主目录下。
bashpwd
- 选项使用 :
pwd
命令支持一些选项来提供额外的功能。其中:--help
:显示在线帮助信息,这对于不熟悉pwd
命令的用户来说非常有用,能够快速查看命令的用法和选项。
bashpwd -help
--version
:显示pwd
命令的版本信息,这可以帮助用户了解自己正在使用的pwd
命令版本。
bashpwd -version
-P
:这个选项告诉pwd
命令避免解析符号链接,直接显示物理路径。如果不使用该选项,则pwd
默认会解析符号链接并显示逻辑路径。
bashpwd -P
4.mkdir
命令
用于在 Linux 系统中创建新的目录。以下是一些常用的使用方式:
- 创建单个目录:
- 语法:
mkdir directory_name
- 示例:要在当前工作目录下创建一个名为 "example_directory" 的目录,可以输入
bashmkdir example_directory
- 创建多级目录:
- 语法:
mkdir -p path/to/directory
- 示例:要创建一个多级的目录结构,例如
dir1/dir2/dir3
,可以使用mkdir -p dir1/dir2/dir3
。这里-p
选项会自动创建不存在的父目录。
bashmkdir -p dir1/dir2/dir3
- 创建多个目录:
- 语法:
mkdir directory1 directory2 directory3
- 示例:一次性创建多个独立目录,如
mkdir images videos documents
,这会创建三个名为 "images", "videos", "documents" 的目录。
bashmkdir images videos documents
- 设置目录权限:
- 语法:
mkdir -m mode directory_name
- 示例:创建目录并设置特定权限,如
mkdir -m 755 my_folder
,这将创建一个名为 "my_folder" 的目录,并设置其权限为 755。
bashmkdir -m 755 my_folder
- 创建目录时避免名称冲突:
- 注意:在创建新目录时,确保指定的目录名在其父目录下不存在,否则命令会失败。
- 权限问题:
- 注意:创建目录通常需要对父目录有写权限。如果在没有足够权限的目录下操作,可能无法成功创建目录。
5. rmdir
命令
主要用于删除空目录。以下是一些常用的使用方法:
- 基本语法:
bashrmdir directory_name
- 这会删除当前工作目录下名为 "directory_name" 的空目录。
- 递归删除 :使用
-p
选项可以递归删除目录及其父目录,前提是这些目录在删除子目录后变成空目录。例如,rmdir -p directory_name
会删除名为 "directory_name" 的目录,如果它的父目录因此变为空目录,那么父目录也会被删除。
bashrmdir -p directory_name
- 显示删除信息 :
-v
选项可以在删除目录时显示详细的删除信息,这有助于用户了解哪些目录被删除了。
bashrmdir -v
- 帮助与版本信息 :
--help
和--version
选项分别用于显示命令的帮助信息和版本信息。
bashrmidir --help
需要注意的是,rmdir
只能删除空目录,如果尝试删除包含文件或子目录的目录,命令将会失败并显示错误消息。此外,删除目录时需要对父目录具有写权限。
6.rm
命令
用于删除文件或目录,它是一个非常强大的命令,使用时需特别小心以避免意外删除重要数据。
以下是一些常用的 rm
命令选项和示例:
- 删除文件:
rm filename
:删除指定文件。如果文件名为 "example.txt",则使用rm example.txt
来删除它。
bashrm filename
rm -i filename
:在删除前会询问确认。这有助于防止误删文件。
bashrm -i filename
- 强制删除文件或目录:
rm -f filename
:即使文件设为只读,也会直接删除文件而不进行询问。
bashrm -f filename
- 递归删除目录及其内容:
rm -r directory
:删除目录及其包含的所有子目录和文件。例如,要删除名为 "project_folder" 的目录,可以使用rm -r project_folder
。
bashrm -r directory
rm -ri directory
:在删除目录前会逐一询问是否删除每个文件,更加安全。
- 删除当前目录下所有文件及目录:
rm -r *
:删除当前目录下的所有文件和子目录。使用这个命令时,系统会询问是否删除每个项。
bashrm -r *
rm -rf *
:不经询问,直接删除当前目录下的所有文件和子目录。这个命令非常危险,因为它不会给出任何提示就删除所有项。
bashrm -rf *
7.cp命令
是Linux和Unix操作系统中用于复制文件或目录的命令。它的基本语法如下:
cp [选项] 源文件 目标文件
其中,源文件是要复制的文件或目录的路径,目标文件是复制后的文件或目录的路径。下面是一些常用的选项:
-r
:递归复制,用于复制目录及其内容-i
:交互模式,复制前提示用户确认-f
:强制覆盖目标文件,不提示用户确认-u
:只复制更新或新增的文件-v
:显示详细信息,输出复制过程中的详细信息
例如,要将文件file1.txt
复制到目录/tmp
中,可以使用以下命令:
cp file1.txt /tmp
如果要复制整个目录dir1
及其内容到目录/tmp
中,可以使用以下命令:
cp -r dir1 /tmp
8.mv命令
是Linux和Unix操作系统中用于移动文件或目录的命令。它还可以用于重命名文件或目录。mv命令的基本语法如下:
mv [选项] 源文件 目标文件
其中,源文件是要移动或重命名的文件或目录的路径,目标文件是移动后的文件或目录的路径。下面是一些常用的选项:
-i
:交互模式,移动前提示用户确认-f
:强制覆盖目标文件,不提示用户确认-u
:只移动更新或新增的文件-v
:显示详细信息,输出移动过程中的详细信息
例如,要将文件file1.txt
移动到目录/tmp
中,可以使用以下命令:
mv file1.txt /tmp
如果要将文件file1.txt
重命名为file2.txt
,可以使用以下命令:
mv file1.txt file2.txt
如果要将整个目录dir1
移动到目录/tmp
中,可以使用以下命令:
mv dir1 /tmp
9.touch命令
是Linux和Unix操作系统中用于创建空文件或更新文件的修改时间戳的命令。它的基本语法如下:
touch [选项] 文件名
如果文件名已经存在,则touch命令将更新文件的修改时间戳为当前时间;如果文件名不存在,则touch命令将创建一个空文件。下面是一些常用的选项:
-a
:仅更新访问时间-c
:不创建任何文件-m
:仅更新修改时间-r
:使用指定文件的时间戳来更新文件-t
:使用指定时间戳来更新文件的时间
例如,要创建一个名为file1.txt
的空文件,可以使用以下命令:
touch file1.txt
如果要更新文件file1.txt
的修改时间戳为当前时间,可以使用以下命令:
touch file1.txt
如果要使用另一个文件file2.txt
的时间戳来更新文件file1.txt
的时间戳,可以使用以下命令:
touch -r file2.txt file1.txt
这样,文件file1.txt
的时间戳将与文件file2.txt
的时间戳相同。
10.cat命令
是Linux和Unix操作系统中用于查看文件内容、创建文件、文件合并以及重定向文件内容的命令。cat命令的基本语法如下:
cat [选项] 文件名
其中,文件名是要查看或操作的文件的路径。下面是一些常用的选项:
-n
:显示行号-b
:显示行号,但不显示空白行的行号-s
:压缩多个空白行为一个空白行
例如,要查看文件file1.txt
的内容,可以使用以下命令:
cat file1.txt
如果要同时查看多个文件的内容,可以将多个文件名作为参数:
cat file1.txt file2.txt
如果要将文件file1.txt
的内容输出到另一个文件file2.txt
中,可以使用重定向符号>
:
cat file1.txt > file2.txt
如果要在终端中显示文件内容的同时显示行号,可以使用-n
选项:
cat -n file1.txt
总的来说,cat命令在Linux和Unix系统中是一个非常常用且功能强大的命令,可以用于处理文件内容的查看、合并和重定向等操作。
11.more命令
是Linux和Unix操作系统中用于逐页显示文件内容的命令。当查看一个较长的文件时,使用more命令可以逐页显示文件内容,方便用户逐页查看而不会一次性显示整个文件内容。more命令的基本语法如下:
more 文件名
简单来说,more命令会将文件内容逐页显示在终端上,同时在底部显示一些提示信息,如"--More--(xx%)"表示还有xx%的内容待显示,按下空格键可以翻页,按下q键可以退出查看。
例如,要查看文件file1.txt
的内容,可以使用以下命令:
more file1.txt
在使用more命令查看文件内容时,可以使用以下快捷键进行操作:
- 空格键:显示下一页内容
- Enter键:显示下一行内容
- q键:退出查看文件内容
- b键:显示上一页内容
- /关键词:搜索包含指定关键词的内容
- :f:显示当前行号和文件总行数
more命令适用于查看较长的文件内容,可以帮助用户逐页浏览文件内容,方便查找所需信息。
12.less命令
也是Linux和Unix操作系统中用于逐页显示文件内容的命令,与more命令类似,但less命令提供了更多的功能和操作选项。less命令的基本语法如下:
less 文件名
简单来说,less命令会将文件内容逐页显示在终端上,与more命令不同的是,less命令支持向前翻页、搜索、跳转等更多的操作。
例如,要查看文件file1.txt
的内容,可以使用以下命令:
less file1.txt
在使用less命令查看文件内容时,可以使用以下快捷键进行操作:
- 空格键:显示下一页内容
- b键:显示上一页内容
- /关键词:向下搜索包含指定关键词的内容
- ?关键词:向上搜索包含指定关键词的内容
- n:显示下一个匹配项
- N:显示上一个匹配项
- q:退出查看文件内容
除了上述快捷键外,less命令还支持一些其他操作选项,如按行号跳转、显示行号、显示文件路径等。
总的来说,less命令比more命令更加灵活和功能更强大,适用于查看较长的文件内容并进行搜索、跳转等操作。
13.head命令
是Linux和Unix操作系统中用于显示文件的开头几行内容的命令。head命令的基本语法如下:
head [选项] 文件名
默认情况下,head命令会显示文件的开头10行内容,如果不指定文件名,则默认从标准输入中读取数据。下面是一些常用的选项:
-n
:指定要显示的行数,例如-n 5
表示显示文件的开头5行内容-c
:指定要显示的字节数,例如-c 20
表示显示文件的开头20个字节内容
例如,要显示文件file1.txt
的开头10行内容,可以使用以下命令:
head file1.txt
如果要显示文件file2.txt
的开头5行内容,可以使用以下命令:
head -n 5 file2.txt
如果要从标准输入中读取数据并显示开头3行内容,可以使用管道符号|
将输入传递给head命令:
echo "line1\nline2\nline3\nline4\nline5" | head -n 3
head命令通常用于快速查看文件的开头部分内容,特别是在处理大型文件时,可以通过head命令快速预览文件的内容。
14.tail命令
是Linux和Unix操作系统中用于显示文件的末尾几行内容的命令。tail命令的基本语法如下:
tail [选项] 文件名
默认情况下,tail命令会显示文件的末尾10行内容,如果不指定文件名,则默认从标准输入中读取数据。下面是一些常用的选项:
-n
:指定要显示的行数,例如-n 5
表示显示文件的末尾5行内容-c
:指定要显示的字节数,例如-c 20
表示显示文件的末尾20个字节内容-f
:实时跟踪文件内容的变化,不断显示最新的内容
例如,要显示文件file1.txt
的末尾10行内容,可以使用以下命令:
tail file1.txt
如果要显示文件file2.txt
的末尾5行内容,可以使用以下命令:
tail -n 5 file2.txt
如果要跟踪文件file3.txt
的内容变化,实时显示最新的内容,可以使用以下命令:
tail -f file3.txt
15.tail命令
通常用于查看文件的末尾部分内容,特别是在查看日志文件或实时监控文件变化时,可以通过tail命令实现。
grep命令是Linux和Unix操作系统中用于在文件中搜索指定模式的文本的命令。grep命令的基本语法如下:
grep [选项] 模式 文件名
其中,模式是要搜索的文本模式,可以是普通字符串或正则表达式,文件名是要在其中搜索的文件。grep命令会在指定文件中查找匹配模式的行,并将匹配的行输出到标准输出。
下面是一些常用的选项:
-i
:忽略大小写-v
:显示不匹配的行-n
:显示匹配行的行号-r
:递归搜索目录下的所有文件-o
:只显示匹配的文本,而不是整行内容
例如,要在文件file1.txt
中搜索包含字符串"hello"的行,可以使用以下命令:
grep "hello" file1.txt
如果要递归搜索目录dir1
下所有文件中包含字符串"world"的行,可以使用以下命令:
grep -r "world" dir1
如果要在文件file2.txt
中搜索以字母"a"开头的单词,可以使用以下命令:
grep '\ba' file2.txt
grep命令是非常强大且常用的文本搜索工具,可以帮助用户快速查找文件中符合特定模式的文本内容。
16.find命令
是Linux和Unix操作系统中用于在文件系统中搜索文件的命令。它可以根据不同的条件来查找文件,并执行相应的操作。find命令的基本语法如下:
find 路径 参数
其中,路径是要搜索的目录路径,参数用于指定搜索条件。下面是一些常用的find命令参数:
-name
:按文件名搜索-type
:按文件类型搜索-size
:按文件大小搜索-exec
:对搜索到的文件执行指定命令-mtime
:按修改时间搜索-user
:按文件所有者搜索-group
:按文件所属组搜索
例如,要在当前目录及子目录中搜索所有以.txt
结尾的文件,可以使用以下命令:
find . -name "*.txt"
如果要在/home/user
目录下搜索所有类型为普通文件的文件,可以使用以下命令:
find /home/user -type f
如果要在/var/log
目录下搜索所有大小大于1MB的文件,可以使用以下命令:
find /var/log -size +1M
如果要在/etc
目录下搜索所有修改时间在最近7天内的文件,可以使用以下命令:
find /etc -mtime -7
通过灵活运用find命令的各种参数,可以快速准确地搜索到符合条件的文件,方便用户进行文件管理和操作。
17.tar命令
是Linux和Unix操作系统中用于归档(打包)文件的命令,通常与gzip或bzip2等压缩工具结合使用来压缩归档文件。tar命令的基本语法如下:
tar [选项] 目标文件名 源文件或目录
其中,目标文件名是要创建的归档文件的名称,源文件或目录是要打包的文件或目录。下面是一些常用的选项:
-c
:创建归档文件-x
:解压归档文件-v
:显示详细信息-f
:指定归档文件名-z
:使用gzip进行压缩-j
:使用bzip2进行压缩
例如,要将目录dir1
打包为一个名为archive.tar
的归档文件,可以使用以下命令:
tar -cvf archive.tar dir1
如果要将归档文件archive.tar
解压缩到当前目录,可以使用以下命令:
tar -xvf archive.tar
如果要将目录dir2
打包为一个使用gzip压缩的归档文件archive.tar.gz
,可以使用以下命令:
tar -czvf archive.tar.gz dir2
如果要解压缩使用gzip压缩的归档文件archive.tar.gz
,可以使用以下命令:
tar -xzvf archive.tar.gz
tar命令是非常常用的文件归档和解归档工具,在Linux和Unix系统中被广泛使用。通过结合不同的选项和压缩工具,可以实现对文件和目录的快速打包和解包。
18.gzip命令
是Linux和Unix操作系统中用于压缩文件的命令,通过gzip命令可以将文件压缩成.gz
格式的压缩文件。gzip命令的基本语法如下:
gzip 文件名
要压缩一个文件,只需指定要压缩的文件名即可。例如,要将文件file1.txt
压缩为file1.txt.gz
,可以使用以下命令:
gzip file1.txt
压缩完成后,原始文件file1.txt
将被替换为压缩文件file1.txt.gz
,原始文件将被删除。
如果要压缩多个文件,可以将多个文件名作为参数传递给gzip命令。例如,要同时压缩file2.txt
和file3.txt
,可以使用以下命令:
gzip file2.txt file3.txt
要解压缩.gz
格式的压缩文件,可以使用gunzip命令或者gzip命令的-d
选项。例如,要解压缩file1.txt.gz
文件,可以使用以下命令:
gunzip file1.txt.gz
或者使用gzip命令的-d
选项:
gzip -d file1.txt.gz
gzip命令是Linux和Unix系统中常用的压缩工具,可以帮助用户将文件快速压缩成较小的.gz
格式文件,节省存储空间并方便传输。
19.gunzip命令
是Linux和Unix操作系统中用于解压缩.gz
格式的压缩文件的命令。gunzip命令实际上是gzip命令的一个符号链接,用于解压缩由gzip命令创建的压缩文件。gunzip命令的基本语法如下:
gunzip 文件名.gz
要解压缩一个.gz
格式的压缩文件,只需指定要解压缩的文件名即可。例如,要解压缩名为file1.txt.gz
的压缩文件,可以使用以下命令:
gunzip file1.txt.gz
解压缩完成后,将生成一个名为file1.txt
的解压后的文件,原始的.gz
格式压缩文件将被删除。
gunzip命令也支持同时解压缩多个.gz
格式的压缩文件。例如,要解压缩file2.txt.gz
和file3.txt.gz
,可以使用以下命令:
gunzip file2.txt.gz file3.txt.gz
gunzip命令还支持使用通配符来解压缩多个匹配的压缩文件。例如,要解压缩所有以.gz
结尾的压缩文件,可以使用以下命令:
gunzip *.gz
gunzip命令是解压缩.gz
格式压缩文件的常用工具,方便用户将压缩文件快速解压缩为原始文件,以进行查看、编辑或其他操作。
20.ssh命令
ssh(Secure Shell)是一种网络协议,同时也是一个用于远程登录和执行命令的工具。通过ssh协议,用户可以在网络上安全地远程登录到另一台计算机,并在远程计算机上执行命令。ssh提供了加密的通信通道,确保数据传输的安全性。
ssh命令用于建立和管理ssh连接。其基本语法如下:
ssh [选项] [用户名@]主机地址
- 选项:ssh命令支持多种选项,例如指定端口、指定私钥文件等。
- 用户名:登录远程主机的用户名。
- 主机地址:远程主机的IP地址或主机名。
例如,要通过ssh连接到远程主机example.com
,可以使用以下命令:
ssh username@example.com
在首次连接时,ssh会询问是否要将远程主机的公钥保存到本地,输入yes
确认即可。然后会要求输入远程主机的密码进行认证。
21.wget命令
下载文件,您可以在终端中输入以下命令:
wget [URL]
例如,要下载名为file.txt的文件,可以使用以下命令:
wget https://example.com/file.txt
您还可以使用wget命令的不同选项来控制下载行为。以下是一些常用的wget选项:
-O
: 指定下载文件的保存名称。例如,wget -O newfile.txt https://example.com/file.txt
将下载文件并保存为newfile.txt。-c
: 断点续传选项,允许在下载过程中中断后继续下载。-P
: 指定下载文件的保存路径。例如,wget -P /path/to/directory https://example.com/file.txt
将文件保存到指定目录中。
22.curl命令
要使用curl命令来下载文件,您可以在终端中输入以下命令:
curl -O [URL]
例如,要下载名为file.txt的文件,可以使用以下命令:
curl -O https://example.com/file.txt
您还可以使用curl命令的不同选项来控制下载行为。以下是一些常用的curl选项:
-O
: 将下载的文件保存为与远程文件相同的名称。-o
: 指定下载文件的保存名称。例如,curl -o newfile.txt https://example.com/file.txt
将下载文件并保存为newfile.txt。-L
: 自动跟随重定向链接。-C -
: 断点续传选项,允许在下载过程中中断后继续下载。
23.top命令
当您在终端中输入top
命令并按下回车后,您将看到类似以下的实时性能数据:
top - 12:45:30 up 1 day, 2:30, 1 user, load average: 0.08, 0.07, 0.06
Tasks: 123 total, 1 running, 122 sleeping, 0 stopped, 0 zombie
%Cpu(s): 3.2 us, 1.5 sy, 0.0 ni, 94.6 id, 0.7 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 4048312 total, 2943884 free, 511652 used, 593776 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 3364364 avail Mem
在top界面中,您可以看到以下信息:
-
第一行显示当前系统时间、系统运行时间、当前登录用户数以及系统负载情况(1分钟、5分钟和15分钟负载平均值)。
-
第二行显示系统中的任务信息,包括总任务数、运行中的任务数、睡眠中的任务数、停止的任务数和僵尸进程数。
-
第三行显示CPU的使用情况,包括用户态使用(us)、系统态使用(sy)、空闲(id)、等待(wa)等百分比。
-
第四行显示内存使用情况,包括总内存、空闲内存、已用内存、缓冲区/缓存等信息。
-
进程列表显示当前运行的进程信息,包括进程ID、用户、CPU占用、内存占用等。
您可以使用键盘上的不同命令来与top交互,例如:
q
: 退出top命令。k
: 杀死选定的进程。r
: 修改进程的优先级。n
: 设置要显示的进程数量。
24.ps命令
ps命令用于显示当前系统中运行的进程信息。您可以在终端中输入以下命令来使用ps命令:
ps
这将显示当前用户的所有进程信息,包括进程ID(PID)、进程状态、CPU使用情况、内存使用情况等。默认情况下,ps命令只显示当前终端会话中的进程信息。
以下是一些常用的ps命令选项和示例:
-
显示当前用户的所有进程信息:
ps
-
显示所有进程的详细信息,包括进程的命令行参数:
ps aux
-
显示所有进程的树状结构:
ps auxf
-
显示指定用户的进程信息:
ps -u username
-
显示指定进程的详细信息:
ps -p PID
25.kill命令
kill命令用于终止正在运行的进程。您可以使用kill命令通过进程ID(PID)或进程名称来终止指定的进程。以下是一些使用kill命令的示例:
-
通过进程ID终止进程:
kill PID
例如,要终止进程ID为1234的进程,可以使用以下命令:
kill 1234
-
通过进程名称终止进程:
killall process_name
例如,要终止名为myprocess的进程,可以使用以下命令:
killall myprocess
-
强制终止进程:
有时候进程可能无响应,您可以使用kill -9
命令强制终止进程:kill -9 PID
或
killall -9 process_name
请注意,使用kill -9
命令会立即终止进程,而不会给进程发送终止信号,因此请谨慎使用。
26.df命令
df命令用于显示文件系统的磁盘空间利用情况。您可以在终端中输入以下命令来使用df命令:
df
这将显示当前系统中所有文件系统的磁盘空间利用情况,包括文件系统的挂载点、总空间、已使用空间、可用空间以及利用率。
以下是一些常用的df命令选项和示例:
-
显示磁盘空间利用情况以人类可读的格式(以GB、MB等为单位):
df -h
-
仅显示指定文件系统的磁盘空间利用情况:
df /dev/sda1
-
显示所有文件系统的磁盘空间利用情况,包括inode信息:
df -i
-
仅显示本地文件系统的磁盘空间利用情况:
df -l
通过df命令,您可以快速查看系统中各个文件系统的磁盘空间利用情况,以便及时进行磁盘空间管理和调整。
27.du 命令
du命令用于显示目录或文件的磁盘使用情况。您可以在终端中输入以下命令来使用du命令:
du [options] [directory or file]
以下是一些常用的du命令选项和示例:
-
显示指定目录的磁盘使用情况:
du /path/to/directory
-
显示当前目录下所有子目录的磁盘使用情况:
du -h --max-depth=1
-
显示以人类可读的格式(以GB、MB等为单位)显示磁盘使用情况:
du -h
-
显示磁盘使用情况,并按照文件大小排序:
du -h | sort -n
-
仅显示总的磁盘使用量,不显示每个子目录的详细信息:
du -sh /path/to/directory
通过du命令,您可以查看目录或文件的磁盘使用情况,帮助您了解磁盘空间的分布情况,并及时进行磁盘空间管理。
28.free 使用
free命令用于显示系统内存的使用情况,包括物理内存和交换空间的情况。您可以在终端中输入以下命令来使用free命令:
free
这将显示系统内存的使用情况,包括总内存、已用内存、空闲内存、缓存以及交换空间的情况。
以下是一些常用的free命令选项和示例:
-
显示内存使用情况以人类可读的格式(以GB、MB等为单位):
free -h
-
以持续更新的方式显示内存使用情况:
free -s 2
这将每2秒更新一次内存使用情况。
-
仅显示总内存和交换空间的使用情况,不显示详细信息:
free -t
通过free命令,您可以及时查看系统内存的使用情况,帮助您了解系统的内存情况并进行必要的调整和管理。
29.ifconfig命令
ifconfig命令用于配置和显示网络接口的信息,包括IP地址、子网掩码、MAC地址等。在最新的Linux系统中,ifconfig命令已经被ip命令所取代,但ifconfig仍然是一个常用的网络配置工具。您可以在终端中输入以下命令来使用ifconfig:
ifconfig
这将显示当前系统中所有网络接口的信息,包括接口名称、IP地址、子网掩码、MAC地址等。
以下是一些常用的ifconfig命令选项和示例:
-
显示所有网络接口的信息:
ifconfig -a
-
显示指定网络接口的信息,如eth0:
ifconfig eth0
-
启用指定网络接口,如eth0:
ifconfig eth0 up
-
禁用指定网络接口,如eth0:
ifconfig eth0 down
-
设置指定网络接口的IP地址和子网掩码,如eth0:
ifconfig eth0 192.168.1.10 netmask 255.255.255.0
通过ifconfig命令,您可以查看和配置系统中的网络接口信息,帮助您进行网络配置和故障排除。
30.ifconfig命令
ifconfig命令用于配置和显示网络接口的信息,包括IP地址、子网掩码、MAC地址等。在最新的Linux系统中,ifconfig命令已经被ip命令所取代,但ifconfig仍然是一个常用的网络配置工具。您可以在终端中输入以下命令来使用ifconfig:
ifconfig
这将显示当前系统中所有网络接口的信息,包括接口名称、IP地址、子网掩码、MAC地址等。
以下是一些常用的ifconfig命令选项和示例:
-
显示所有网络接口的信息:
ifconfig -a
-
显示指定网络接口的信息,如eth0:
ifconfig eth0
-
启用指定网络接口,如eth0:
ifconfig eth0 up
-
禁用指定网络接口,如eth0:
ifconfig eth0 down
-
设置指定网络接口的IP地址和子网掩码,如eth0:
ifconfig eth0 192.168.1.10 netmask 255.255.255.0
通过ifconfig命令,您可以查看和配置系统中的网络接口信息。
31.ping命令
ping命令用于测试与另一个网络设备的连接,通常用于检查主机之间的网络连通性。您可以在终端中输入以下命令来使用ping:
ping [IP地址或域名]
例如,要ping一个IP地址为192.168.1.1的设备,可以使用以下命令:
ping 192.168.1.1
或者,要ping一个域名为example.com的设备,可以使用以下命令:
ping example.com
ping命令将发送ICMP(Internet Control Message Protocol)数据包到指定的目标,并等待目标设备的响应。在终端窗口中,您将看到每个数据包的响应时间以及与目标设备的连接状态。
以下是一些常用的ping命令选项和示例:
-
持续ping目标设备,直到手动停止:
ping -t [IP地址或域名]
-
限制ping的次数:
ping -c 5 [IP地址或域名]
这将ping目标设备5次。
-
设置ping数据包的大小:
ping -s 100 [IP地址或域名]
这将发送大小为100字节的ping数据包。
通过ping命令,您可以快速测试目标设备的网络连通性。
32.traceroute 命令
traceroute命令用于跟踪数据包从本地主机到目标主机的路径。它显示数据包在网络上经过的所有路由器(跃点)以及每个跃点的延迟时间。您可以在终端中输入以下命令来使用traceroute:
traceroute [目标主机]
例如,要跟踪到目标主机example.com,可以使用以下命令:
traceroute example.com
traceroute命令将显示数据包经过的每个路由器的IP地址、主机名(如果可用)以及延迟时间。这有助于诊断网络问题并确定数据包在网络上的路径。
以下是一些常用的traceroute命令选项和示例:
-
使用数字IP地址而不是主机名显示路由信息:
traceroute -n example.com
-
设置数据包的最大跃点数:
traceroute -m 30 example.com
这将设置数据包的最大跃点数为30。
-
使用TCP协议而不是默认的UDP协议进行跟踪:
traceroute -T example.com
通过traceroute命令,您可以了解数据包在网络上的传输路径。
33.netstat 命令
netstat命令用于显示网络系统的状态信息,包括网络连接、路由表、接口统计等。您可以在终端中输入以下命令来使用netstat:
netstat [options]
以下是一些常用的netstat命令选项和示例:
-
显示所有活动的网络连接信息:
netstat -a
-
显示所有监听端口的信息:
netstat -l
-
显示所有TCP连接的信息:
netstat -t
-
显示所有UDP连接的信息:
netstat -u
-
显示所有网络接口的信息:
netstat -i
-
显示路由表信息:
netstat -r
通过netstat命令,您可以查看系统中的网络连接、路由表、接口统计等信息,帮助您监控和诊断网络问题。
34.iptables 命令
iptables是一个用于配置Linux内核防火墙的命令行工具。它允许用户设置规则来控制数据包的流动,从而保护系统免受网络攻击。以下是一些常见的iptables命令示例:
-
显示当前的防火墙规则:
iptables -L
-
允许所有进入和离开的流量:
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT -
禁止所有进入和离开的流量:
iptables -P INPUT DROP
iptables -P OUTPUT DROP -
允许特定端口的流量进入:
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
-
允许特定IP地址的流量进入:
iptables -A INPUT -s 192.168.1.100 -j ACCEPT
-
阻止特定IP地址的流量进入:
iptables -A INPUT -s 192.168.1.200 -j DROP
-
保存规则以便重启后生效:
iptables-save > /etc/iptables/rules.v4
请注意,对防火墙规则的更改可能会影响系统的网络连接。建议在对iptables进行任何更改之前,先备份当前的规则以便在需要时恢复。
35.crontab 命令
crontab是一个用于管理定时任务的命令,允许用户在指定的时间间隔内运行命令或脚本。以下是一些常见的crontab命令示例:
-
编辑当前用户的crontab文件(如果没有则创建新的):
crontab -e
-
显示当前用户的crontab内容:
crontab -l
-
删除当前用户的crontab内容:
crontab -r
-
crontab时间格式说明:
-
-
-
-
- command
-
-
-
| | | | |
| | | | +----- Day of week (0 - 7) (Sunday=0 or 7)
| | | +------- Month (1 - 12)
| | +--------- Day of month (1 - 31)
| +----------- Hour (0 - 23)
+------------- Minute (0 - 59) -
-
示例:在每天的凌晨3点运行一个脚本:
0 3 * * * /path/to/script.sh
-
示例:每隔30分钟运行一个命令:
*/30 * * * * command
-
示例:每周一早上8点运行一个脚本:
0 8 * * 1 /path/to/script.sh
通过编辑crontab文件,您可以设置系统定期执行的任务,自动化重复性的工作,提高效率。请确保在编辑crontab文件时使用正确的语法和时间格式,以避免意外执行任务。
36.chmod 命令
chmod命令用于更改文件或目录的权限。在Linux系统中,每个文件和目录都有权限属性,分为所有者、所属组和其他用户的读、写和执行权限。您可以使用chmod命令来更改这些权限。以下是一些常见的chmod命令示例:
-
使用数字表示法更改文件权限:
chmod [mode] [file]
其中,mode是用数字表示的权限模式,如777表示所有者、所属组和其他用户都具有读、写和执行权限。
-
使用符号表示法更改文件权限:
chmod [who][operator][permission] [file]
其中,who表示权限作用的对象(u-所有者,g-所属组,o-其他用户,a-所有用户),operator表示操作符(+添加权限,-移除权限,=设置权限),permission表示权限(r-读,w-写,x-执行)。
-
示例:将文件file.txt设置为所有者具有读写权限,所属组具有读权限,其他用户具有写权限:
chmod 640 file.txt
-
示例:给文件添加执行权限:
chmod +x file.sh
-
示例:将目录及其子目录中的所有文件设置为所有者具有读写执行权限:
chmod -R 700 directory
通过使用chmod命令,您可以灵活地管理文件和目录的权限,确保系统的安全性和访问控制。请谨慎使用chmod命令,以免意外更改文件权限导致系统问题。
37.chown 命令
chown命令用于更改文件或目录的所有者和所属组。在Linux系统中,每个文件和目录都有一个所有者和所属组,这些属性决定了哪些用户可以访问和修改文件。以下是一些常见的chown命令示例:
-
更改文件的所有者:
chown [new_owner] [file]
其中,new_owner是要设置的新所有者的用户名或用户ID。
-
更改文件的所有者和所属组:
chown [new_owner]:[new_group] [file]
其中,new_owner是要设置的新所有者的用户名或用户ID,new_group是要设置的新所属组的组名或组ID。
-
递归更改目录及其子目录中所有文件的所有者和所属组:
chown -R [new_owner]:[new_group] [directory]
-
示例:将文件file.txt的所有者更改为user1:
chown user1 file.txt
-
示例:将文件file.txt的所有者更改为user2,所属组更改为group1:
chown user2:group1 file.txt
-
示例:递归将目录dir及其子目录中的所有文件的所有者更改为user3,所属组更改为group2:
chown -R user3:group2 dir
通过使用chown命令,您可以更改文件和目录的所有者和所属组,从而控制访问权限和安全性。请谨慎使用chown命令,确保正确设置文件和目录的所有者和所属组。
38.ln 命令
ln命令用于创建链接,可以是硬链接或符号链接(软链接)。链接是文件系统中指向另一个文件或目录的指针,允许多个文件名指向同一个数据块。以下是一些常见的ln命令示例:
-
创建硬链接:
ln [source_file] [link_name]
这将在当前目录创建一个指向源文件的硬链接。
-
创建符号链接(软链接):
ln -s [source_file] [link_name]
这将创建一个指向源文件的符号链接。
-
示例:创建一个名为linkfile的硬链接,指向源文件sourcefile.txt:
ln sourcefile.txt linkfile
-
示例:创建一个名为symlinkfile的符号链接,指向源文件sourcefile.txt:
ln -s sourcefile.txt symlinkfile
-
查看文件的链接数:
ls -l
在ls命令输出的第一列中,链接数表示指向该文件或目录的链接数量。
通过创建硬链接或符号链接,您可以在文件系统中创建指向同一数据块的多个文件名,提高文件的可访问性和管理灵活性。请注意,符号链接可以跨文件系统,而硬链接不可以。
39.grep 命令
grep是一个命令行工具,用于在文本文件中搜索指定的字符串。它的基本语法如下:
grep [选项] 搜索模式 文件名
常用的选项包括:
-i
:忽略大小写-r
:递归搜索子目录-n
:显示行号-v
:显示不匹配的行
例如,要在一个文件中搜索包含字符串"hello"的行,可以使用以下命令:
grep "hello" file.txt
要忽略大小写进行搜索,可以使用 -i
选项:
grep -i "hello" file.txt
要递归搜索子目录中的文件,可以使用 -r
选项:
grep -r "hello" /path/to/directory
grep命令非常强大,可以根据不同的需求使用不同的选项来进行搜索。
40.sed 命令
sed是一个流式文本编辑器,可以用于对文本文件进行编辑、替换、删除等操作。其基本语法如下:
sed [选项] '动作' 文件名
常用的选项包括:
-i
:直接修改文件内容,而不是输出到标准输出-e
:允许对文件应用多个sed命令
常用的sed动作包括:
s/模式/替换/
:替换匹配模式的内容d
:删除匹配到的行p
:打印匹配到的行a
:在匹配行后添加文本i
:在匹配行前插入文本
例如,要替换文件中所有的"hello"为"world",可以使用以下命令:
sed -i 's/hello/world/g' file.txt
要删除文件中包含"hello"的行,可以使用以下命令:
sed -i '/hello/d' file.txt
要在文件中每一行的末尾添加文本"end",可以使用以下命令:
sed -i 'a\end' file.txt
sed命令功能强大,可以根据不同的需求使用不同的动作来对文本文件进行处理。
41.awk 命令
awk是一个强大的文本处理工具,可以用于处理文本文件中的数据、进行格式化输出等操作。其基本语法如下:
awk [选项] '条件 动作' 文件名
常用的选项包括:
-F
:指定字段分隔符-v
:定义变量
awk的基本结构为:条件 动作。条件用于匹配数据行,动作用于对匹配到的数据行进行处理。常用的动作包括:
{print $1}
:打印第一个字段{print $NF}
:打印最后一个字段{print NF}
:打印字段数{sum += $1}
:对第一个字段求和{if ($2 > 10) print $0}
:根据条件筛选数据行
例如,要打印文件中第一个字段大于10的行,可以使用以下命令:
awk '$1 > 10 {print $0}' file.txt
要以逗号作为字段分隔符来处理文件,可以使用 -F
选项:
awk -F',' '{print $1, $2}' file.txt
要对文件中的第二个字段进行求和,可以使用以下命令:
awk '{sum += $2} END {print sum}' file.txt
awk命令非常灵活,可以根据不同的需求使用不同的条件和动作来处理文本文件中的数据。
42.sort 命令
sort命令用于对文本文件进行排序操作。其基本语法如下:
sort [选项] 文件名
常用的选项包括:
-r
:逆序排序-n
:按数字排序-k
:指定按照哪一列进行排序-u
:去重,只输出唯一行-t
:指定字段分隔符
例如,要对一个文件进行排序,可以使用以下命令:
sort file.txt
要按照数字逆序排序一个文件,可以使用 -nr
选项:
sort -nr file.txt
要按照第二列进行排序,可以使用 -k
选项:
sort -k 2 file.txt
要去重并排序一个文件,可以使用 -u
选项:
sort -u file.txt
sort命令非常实用,可以根据不同的需求使用不同的选项来对文本文件进行排序操作。
43.uniq 命令
uniq命令用于去除文本文件中的重复行,并可以统计重复行的数量。其基本语法如下:
uniq [选项] 文件名
常用的选项包括:
-c
:在输出行前加上每行重复出现的次数-d
:只显示重复的行-i
:忽略大小写-u
:只显示不重复的行
例如,要去除文件中的重复行并统计重复行的数量,可以使用以下命令:
uniq -c file.txt
要只显示重复的行,可以使用 -d
选项:
uniq -d file.txt
要忽略大小写进行去重,可以使用 -i
选项:
uniq -i file.txt
要只显示不重复的行,可以使用 -u
选项:
uniq -u file.txt
uniq命令非常方便,可以根据不同的需求使用不同的选项来对文本文件进行去重操作。
44.wc 命令
wc命令用于统计文件中的行数、字数和字符数。其基本语法如下:
wc [选项] 文件名
常用的选项包括:
-l
:仅统计行数-w
:仅统计字数-c
:仅统计字符数
例如,要统计文件中的行数、字数和字符数,可以使用以下命令:
wc file.txt
要仅统计文件中的行数,可以使用 -l
选项:
wc -l file.txt
要仅统计文件中的字数,可以使用 -w
选项:
wc -w file.txt
要仅统计文件中的字符数,可以使用 -c
选项:
wc -c file.txt
wc命令非常简单实用,可以快速统计文件的基本信息,如行数、字数和字符数。
45.diff 命令
diff命令用于比较两个文件的内容,并显示它们之间的差异。其基本语法如下:
diff 文件1 文件2
diff命令会逐行比较文件1和文件2的内容,并输出它们之间的差异。输出格式通常为以"<"开头的行表示文件1中的内容,以">"开头的行表示文件2中的内容。
常用的选项包括:
-u
:以统一格式显示差异-r
:递归比较目录中的文件
例如,要比较两个文件的内容并显示差异,可以使用以下命令:
diff file1.txt file2.txt
要以统一格式显示差异,可以使用 -u
选项:
diff -u file1.txt file2.txt
如果要比较两个目录中的文件,可以使用 -r
选项:
diff -r dir1 dir2
diff命令是一个非常有用的工具,可以帮助用户查找和理解文件之间的差异。
46.nohup 命令
nohup命令用于在后台运行命令,并且不受终端关闭的影响。即使用户退出登录或关闭终端,被nohup启动的进程仍会继续运行。其基本语法如下:
nohup command [arguments] &
command
:要在后台运行的命令arguments
:命令的参数&
:将命令放入后台运行
例如,要在后台运行一个长时间运行的脚本,可以使用以下命令:
nohup ./long_running_script.sh &
被nohup启动的进程会将输出重定向到当前目录下的nohup.out文件中,可以使用 tail -f nohup.out
命令来实时查看输出。
需要注意的是,使用nohup命令后,虽然进程不会受到终端关闭的影响,但仍会受到系统的限制,比如内存限制、CPU限制等。所以在使用nohup启动进程时,需要确保系统资源足够支持进程的运行。
47.screen 命令
screen命令是一个终端会话管理工具,可以在一个终端窗口中创建多个虚拟终端,并在其中运行不受终端关闭影响的命令。使用screen命令可以在一个终端中同时运行多个命令,方便管理和切换。
基本的screen命令用法如下:
-
启动一个新的screen会话:
screen
-
在screen会话中运行命令:
command
-
按下
Ctrl + A
,然后按下D
键来将当前screen会话切换到后台。 -
查看所有screen会话:
screen -ls
-
恢复一个已经存在的screen会话:
screen -r [会话ID]
-
结束一个screen会话:
在screen会话中运行命令或任务结束后,可以通过 exit
或 Ctrl + D
来结束会话。
screen命令非常方便,可以在终端中管理多个会话,保持会话的持久性,即使断开连接也可以重新连接并恢复会话状态。这对于长时间运行的任务或需要保持长时间连接的任务非常有用。
48.tee 命令
tee命令用于从标准输入读取数据,并将其写入标准输出和一个或多个文件。tee命令通常用于同时查看输出并将其保存到文件中。其基本语法如下:
command | tee 文件名
command
:要执行的命令或数据流文件名
:要保存输出的文件名
例如,要将命令的输出同时显示在终端并保存到文件中,可以使用以下命令:
ls -l | tee output.txt
上面的命令会将 ls -l
命令的输出显示在终端上,同时将输出保存到output.txt文件中。
可以通过添加 -a
选项来追加输出到文件而不是覆盖文件:
ls -l | tee -a output.txt
tee命令还可以同时输出到多个文件,只需在命令中指定多个文件名即可:
ls -l | tee file1.txt file2.txt
tee命令在需要同时查看输出和保存输出到文件时非常有用,可以帮助用户方便地实现这个目的。
49.history 命令
history命令用于显示用户在当前shell会话中执行过的命令历史记录。可以通过history命令查看之前执行过的命令,并重新执行这些命令。其基本语法如下:
history
history命令会显示一个编号列表,每个编号对应一个执行过的命令。可以使用这些编号来重新执行之前执行过的命令。
常用的history命令选项包括:
-c
:清空当前会话的命令历史记录-w
:将当前会话的命令历史记录写入到历史记录文件中-d
:删除指定编号的历史记录
例如,要查看之前执行过的命令历史记录,可以直接运行:
history
要重新执行历史记录中的某个命令,可以使用 !编号
的格式,例如重新执行编号为3的命令:
!3
要清空当前会话的历史记录,可以使用 -c
选项:
history -c
要将当前会话的历史记录写入历史记录文件中,可以使用 -w
选项:
history -w
history命令可以帮助用户方便地查看和管理命令历史记录,提高命令的复用和效率。
总结
还没有结束 后面我再添加,这些还是整理还没有具体操作。
请看(三)