1.vi命令:用于编辑文本文件的命令,可以进行插入、删除、替换等操作。
- i :在编辑模式下,在当前光标所在位置前插入文本
- a :在编辑模式下,在当前光标所在位置后插入文本
- o :在编辑模式下,在当前行下方新建一行并插入文本
- Esc键:从编辑模式切换到命令模式
- :wq :在命令模式下保存文件并退出vi编辑器
- :q! :在命令模式下强制退出不保存修改
- dd :在命令模式下删除当前行
- yy :在命令模式下复制当前行
- p :在命令模式下粘贴复制的内容到当前位置
- u :在命令模式下撤销上一步操作
- /搜索词:在命令模式下查找指定的字符串
- n:在命令模式下查找下一个与指定字符串匹配的内容
- %s/old/new/g:在命令模式下替换整个文件中所有的old为new
- :set nu:在命令模式下显示行号
- :set nonu:在命令模式下取消行号显示
进入编辑模式的方法是按下i或a或o等字符,进入命令模式的方法是按下Esc键。
2.ip命令:用于配置和查看Linux系统网络接口和路由表的命令。
- ip addr:显示网络接口的IP地址信息。
- ip link:显示网络接口的链路状态。
- ip route:显示路由表信息。
- ip neigh:显示邻居缓存信息。
- ip tunnel:创建和管理网络隧道。
- ip rule:显示路由策略并允许用户修改。
- ip maddr:管理组播地址。
- ip netns:管理网络名称空间。
- ip tcp_metrics:显示TCP统计信息。
3.ssh命令:
- 连接远程主机:
ssh username@hostname 或 ssh hostname - 指定端口号连接远程主机:
ssh -p port username@hostname - 指定私钥文件进行连接:
ssh -i private_key_file username@hostname - 执行远程命令:
ssh username@hostname command
4.ping命令:用于测试与目标主机之间的网络连接是否正常以及测量网络延迟等。
格式:ping [选项] 目标主机
ping命令的参数包括:
-t:连续Ping目标主机,直到手动停止。
-n:指定要发送的Ping数据包数量。
-l:指定Ping数据包的大小(字节)。
-f:设置在发送Ping数据包时不分段。这可能会导致Ping请求失败。
-i:设置发送Ping数据包的间隔时间(毫秒)。
-w:指定等待目标主机响应的超时时间(毫秒)。
-4:使用IPv4协议进行Ping操作。
-6:使用IPv6协议进行Ping操作。
-a:尝试解析IP地址对应的计算机名称。
-v:详细显示Ping操作的结果信息。
5.lsof命令:用于列出当前系统中打开的文件和网络连接等信息。
lsof [options] [files…],其中,files表示要查询的文件或目录名。
常用参数包括:
-c:指定进程名。
-u:指定用户ID。
-p:指定进程ID。
-i:显示网络连接信息。
-n:不进行IP地址到主机名的解析。
-t:仅显示进程ID。
-F:指定输出格式(例如,-F +f表示以+分隔的前缀字段)。
-r:连续监视文件变化。
-V:显示版本信息。
此外,lsof还有许多其他参数,可以通过man lsof命令查看完整列表和使用说明。
6.find命令:用于在指定目录下查找符合条件的文件或目录。
find [path] [expression],其中,path表示要查找的起始目录,expression表示查找条件。
常用参数包括:
-name:按照文件名进行查找。
-type:按照文件类型进行查找(例如,f表示普通文件,d表示目录)。
-mtime:按照文件修改时间进行查找。
-user:按照文件所有者进行查找。
-size:按照文件大小进行查找。
-exec:在查找结果中执行指定的命令。
-print:将查找结果打印到标准输出。
-maxdepth:指定查找的最大深度。
-mindepth:指定查找的最小深度。
此外,find还有许多其他参数,可以通过man find命令查看完整列表和使用说明。
7.grep命令:用于在指定文本文件或标准输入中搜索匹配某个模式的行,并输出结果。
grep [options] pattern [file…]
其中,pattern表示要查找的模式,file表示要查找的文件名(可以使用通配符)。
常用参数包括:
-i:忽略大小写。
-v:只显示不匹配的行。
-c:只显示匹配行的数量。
-n:显示匹配行及其行号。
-r:递归查找子目录。
-w:只匹配整个单词,而不是部分字符串。
-E:启用扩展正则表达式。
-f:从文件中读取模式列表。
–include:指定要查找的文件类型(例如,–include "*.txt"表示只查找txt文件)。
–exclude:指定要排除的文件类型。
此外,grep还有许多其他参数,可以通过man grep命令查看完整列表和使用说明。
8 ls:列出当前目录下的文件和文件夹
ls [options] [file…],其中,file表示要列出的目录或文件名(可以使用通配符)。
常用参数包括:
-a:显示所有文件,包括隐藏文件。
-l:以详细格式显示文件信息。
-h:结合-l选项使用,以人类可读的格式显示文件大小。
-S:按照文件大小排序。
-t:按照文件修改时间排序。
-r:反向排序。
-R:递归列出子目录。
-d:仅列出目录本身,而不是其内容。
–color:启用彩色输出。
–full-time:以完整时间格式显示文件修改时间。
此外,ls还有许多其他参数,可以通过man ls命令查看完整列表和使用说明。
9 cd:切换当前工作目录
cd [选项] [目录路径]
常用选项包括:
-P :显示物理路径,而非链接路径。
-L :(默认)显示链接路径,而非物理路径。
- :回到上次所在的目录。
–help :显示帮助信息。
–version :显示版本信息。
注:在Linux中,“.”表示当前目录,“…”表示上一级目录。
10. mkdir:创建新的文件夹
mkdir [选项] 目录名
常用选项包括:
-m :设置权限。
-p :递归创建目录(如果父级目录不存在)。
–help :显示帮助信息。
–version :显示版本信息。
11. rm:删除文件或文件夹
rm [选项] 文件名/目录名
常用选项:
-i:交互式删除,每次删除前都会询问用户是否确认删除
-r/-R:递归删除,可用于删除目录及其子目录和文件
-f:强制删除,不提示确认信息
-v:显示详细信息,打印出每个被删除的文件名
12 cp:复制文件或文件夹
cp [选项] 源文件 目标文件
常用选项包括:
-r :递归复制,复制目录及其子目录下所有文件。
-a :归档模式,保留文件的所有权限、时间戳等信息,通常用于备份。
-i :交互模式,每次复制前提示是否覆盖已有文件。
-f :强制复制,不进行任何提示直接覆盖目标文件。
–help :显示帮助信息。
–version :显示版本信息。
13. mv:移动文件或文件夹,也可用于重命名文件或文件夹
mv [选项] 源文件/目录 目标文件/目录
常用选项:
-i:交互式操作,每次操作前都会询问用户是否确认
-f:强制操作,不提示确认信息
-v:显示详细信息,打印出每个被移动的文件名
14. cat:查看文件内容
语法:cat [选项] [文件名]
常用参数:
-n或–number:由1开始对所有输出的行数编号
-b或–number-nonblank:和-n类似,只不过对于空白行不编号
-s或–squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行
-T或–show-tabs: 将跳格字符显示为^I
-E或–show-ends:在每行结束处显示$
-A, --show-all:等价于-vET,可以同时显示制表符、行尾标志和控制字符
其他参数:
-e:等价于 -vE 参数的效果;
-t:等价于 -vT 参数的效果;
-u:若不加上此参数,则 cat 在输出后会将底层的 I/O 缓存区内容传送到萤幕中,并让屏幕显示器来处理;但如果加上 -u 参数,则 cat 并不会主动地将 I/O 缓存区内容传送至萤幕,而是让内容逐步地输入至萤幕中。
-v:使输出的文本中不显示制表符,行末标志及无法用键盘直接输入的控制字符(例如 ASCII 码 0 至 31 的非打印字符)。
15. grep:在文件中搜索指定字符串
语法:grep [选项] [待匹配的字符串] [文件名]
常用参数:
-i:忽略大小写
-r:递归查找子目录中的文件
-w:匹配整词,防止误匹配
-n:显示行号,方便定位
-v:显示不匹配的行
-c:统计匹配到的总行数
-l:只显示匹配到的文件名,不显示行内容
-E:支持正则表达式
其他参数:
-A<显示行数>:除了列出该行外,并显示该行之后的n行
-B<显示行数>:除了列出该行外,并显示该行之前的n行
-C<显示行数>或-<显示行数>:除了列出该行外,并显示该行之前后的n行
16. tar:压缩或解压文件或文件夹
其用法如下:
语法:tar [选项] [文件或目录]
常用参数:
-c:打包压缩文件
-x:解压缩文件
-z:使用gzip进行压缩或解压缩
-j:使用bzip2进行压缩或解压缩
-t:列出压缩包内容
-v:显示详细信息
-f:指定压缩包名称
其他参数:
-C:指定解压目录
-p:保留文件原有权限和属性
–exclude:排除某些文件或目录不参与压缩
–exclude-from:从文件中读取要排除的文件列表
–same-owner:在解压时,保留文件所有者信息
–numeric-owner:在解压时,将文件所有者信息转为数字形式
17. top:查看系统运行情况和进程信息
top命令是用于实时监控系统运行状态的常用命令,其用法如下:
语法:top [选项]
常用参数:
-d <秒数>:指定更新时间间隔
-p <进程号>:指定显示某个进程的详细信息
-c:显示完整的命令行信息
-M:显示内存使用量的单位为MB或GB
-b:以批处理模式运行top命令
其他参数:
-u <用户名>:只显示该用户的进程信息
-H:显示线程信息
-S:<关键字>:根据指定关键字进行排序,默认按CPU占用率排序
-n <次数>:设置top命令执行次数
-i:不显示空闲进程
-z:显示进程状态
18. find:查找文件或文件夹
语法:find [路径] [选项] [表达式]
常用参数:
-name:<文件名>:根据文件名查找
-type:<文件类型>:根据文件类型查找(f:普通文件;d:目录;l:符号链接等)
-size:<文件大小>:根据文件大小查找(+n:大于n;-n:小于n;n:等于n)
-mtime:<时间>:根据修改时间查找(+n:n天前以后修改过;-n:n天以内修改过;n:刚好n天前修改过)
-exec::对查找到的文件执行指定命令
其他参数:
-maxdepth:<深度>:限制查找深度
-mindepth:<深度>:限制查找起始深度
-user:<用户名>:根据文件拥有者查询
-group:<组名>:根据文件所属组查询
-perm:<权限>:根据权限查询
-not:表示逻辑非
-and:表示逻辑与
-or:表示逻辑或
19. chmod:修改文件或文件夹的权限
chmod [选项] 模式 文件名
其中,选项包括:
-R:递归处理,即对子目录以及其中的文件进行相同操作;
-v:显示详细处理过程;
-c:只有在更改了文件权限时才显示信息。
模式指定了要修改的权限,常用的有:
u:表示文件所有者(user);
g:表示文件所属组(group);
o:表示其他用户(others);
a:表示所有用户(all)。
r:读权限,数字表示为“4”;
w:写权限,数字表示为“2”;
x:执行权限,数字表示为“1”;
X:只有当原来就具有可执行权限或者是一个目录时才会添加上可执行权限;
s:SUID和SGID权限,数字表示为“4”和“2”;
t:Sticky权限,数字表示为“1”。
例如,将文件file的所有用户的写权限全部禁止,可以使用如下命令:
chmod a-w file
20. chown:修改文件或文件夹的所属用户和组
Linux中chown命令的格式为:
chown [选项] 用户名 文件名
其中,选项包括:
-R:递归处理,即对子目录以及其中的文件进行相同操作;
-v:显示详细处理过程;
-c:只有在更改了文件所有者时才显示信息。
21. sudo:以超级管理员身份执行命令
sudo [选项] 命令
其中,选项包括:
-u:指定要切换到的用户;
-H:将HOME环境变量设置为目标用户的$HOME目录;
-l:列出当前用户可以使用的sudo权限;
-v:更新sudo的时间戳;
-k:强制sudo重新认证密码。
例如,以root用户身份执行ls命令,可以使用如下命令:
sudo -u root ls
22. ifconfig:查看网络接口的信息
Linux中ifconfig命令用于显示和配置网络接口,其格式为:
ifconfig [选项] 接口名称
其中,选项包括:
-a:显示所有网络接口,包括未激活的接口;
-s:显示简要统计信息,包括已发送和已接收的数据包数;
-v:显示详细的输出信息;
-up:启动指定的网络接口;
-down:关闭指定的网络接口。
23. df:显示文件系统使用情况
Linux中df命令用于显示磁盘使用情况,其格式为:
df [选项] [文件或目录]
其中,常用的选项包括:
-a:显示所有文件系统信息,包括tmpfs等;
-h:以人类可读的方式显示磁盘容量,例如GB、MB等;
-i:显示inode数目而非块数;
-T:显示文件系统类型。