Linux命令超级汇总

文件和目录操作

命令语法常用选项及说明
lsls [选项] [目录名]-l:以长格式显示文件和目录信息
-a:显示所有文件,包括隐藏文件
-h:与 -l 配合,以人类可读的方式显示文件大小
-R:递归显示子目录内容
cdcd [目录名]- 无选项时,若 目录名 为 ..,返回上一级目录;若为 ~,返回用户主目录
mkdirmkdir [选项] 目录名-p:创建多级目录
rmrm [选项] 文件或目录名-f:强制删除,不提示确认
-r:递归删除目录及其内容
mvmv [选项] 源文件或目录 目标文件或目录- 无常用特殊选项,可用于文件或目录的移动和重命名
cpcp [选项] 源文件或目录 目标文件或目录-r:递归复制目录及其内容
-a:归档复制,保留文件所有属性
pwdpwd无选项,显示当前工作目录的绝对路径
touchtouch [选项] 文件名- 无常用特殊选项,用于创建空文件或更新文件的访问和修改时间

命令

示例

ls -l /home

显示 /home 目录下文件和目录的详细信息

ls -ah

显示当前目录下所有文件(含隐藏文件)并以可读大小显示

ls -R

递归显示当前目录及其子目录内容

cd /var/log

进入 /var/log 目录

cd ..

返回上一级目录

cd ~

返回用户主目录

mkdir new_dir

创建一个名为 new_dir 的目录

mkdir -p a/b/c

创建多级目录 a/b/c

rm file.txt

删除 file.txt 文件

rm -f unwanted_file

强制删除 unwanted_file

rm -r dir_to_remove

删除 dir_to_remove 目录及其所有内容

mv old_file.txt new_file.txt

重命名 old_file.txt 为 new_file.txt

mv file.txt /new/location

将 file.txt 移动到 /new/location 目录

cp file1.txt file2.txt

复制 file1.txt 为 file2.txt

cp -r source_dir dest_dir

复制 source_dir 目录及其内容到 dest_dir

cp -a important_file /backup

复制 important_file 并保留所有属性到 /backup 目录

pwd

显示当前所在目录的完整路径

touch new_empty_file.txt

创建一个名为 new_empty_file.txt 的空文件

除了选项本身可以组合以外,选项和参数也可以一起使用。



 


文本处理

命令语法常用选项及说明
catcat [选项] 文件1 [文件2 ...]-n:显示行号
tactac 文件无选项,反向显示文件内容
grepgrep [选项] 模式 文件名-i:忽略大小写
-r:递归搜索目录中的文件
-n:显示匹配行的行号
sedsed [选项] '脚本命令' 文件-i:直接修改文件内容
awkawk '条件 {动作}' 文件

- 可用于文本处理和数据提取,条件和动作可根据需求自定义

more      more Linux路径

查看文件,支持翻页(查看大文件内容时使用)

文件打开后:↓
空格:翻页

q     :退出查看

wc              wc [-c -m -l -w] 文件路径

统计文件的行数、单词数量等
-c:统计btes数量

-m:统计字符数量

-l:统计行数

-w:统计单词数量

tail       tail  [-f -num]  linux路径

查看文件尾部的内容,跟踪文件的最新更新
-f 表示持续跟踪

-num:表示,查看尾部多少行,默认10

命令

示例

cat file.txt

显示 file.txt 的内容

cat -n file.txt

显示 file.txt 的内容并显示行号

tac file.txt

反向显示 file.txt 的内容

grep "keyword" file.txt

在 file.txt 中搜索包含 keyword 的行

grep -i "Hello" file.txt

忽略大小写搜索包含 Hello 的行

grep -r "pattern" /home

递归搜索 /home 目录下所有文件中包含 pattern 的行

sed 's/old/new/g' file.txt

将 file.txt 中所有的 old 替换为 new

sed -i 's/error/fix/g' file.txt

直接修改 file.txt 中所有的 error 为 fix

awk '{print $1}' file.txt

打印 file.txt 中每行的第一个字段

awk '\(3 > 10 {print \)0}' data.txt

打印 data.txt 中第三列大于 10 的行


网络相关

命令语法常用选项及说明
pingping [选项] 目标地址-c 次数:指定发送 ICMP 包的次数
-i 间隔:指定发送 ICMP 包的时间间隔(秒)
ifconfigifconfig [接口名] [选项]up:启用指定网络接口
down:禁用指定网络接口
- 指定 IP 地址和子网掩码:ifconfig 接口名 IP地址 netmask 子网掩码
netstatnetstat [选项]-an:显示所有网络连接信息,包括监听和非监听状态
-t:显示 TCP 连接信息
-u:显示 UDP 连接信息
traceroutetraceroute [选项] 目标地址- 无常用特殊选项,用于跟踪数据包到目标地址所经过的路由
hostnamehostname查看主机名
hostnamectlhostnamectl set-hostname 主机名,修改主机名(需root权限)更改主机名
wgetwget [-b] url非交换式下载器
-b:可选,后台下载,会将日志写入到当前工作目录的wget-log文件
参数:url,下载链接
curlcurl [-0] url可以发送http请求,用于下载文件、获取信息等
-o:用于下载文件,当url是下载链接时,可以使用此选项保存文件
url:网络地址
sarsar -n DEV num1 num2查看网络相关统计,比较复杂,详情请看官网
-n: 查看网络,DEV表示查看网络接口
num1:刷新间隔(不填写就查看一次结束)
num2:查看次数(不填写则无数次)

命令

示例

ping www.baidu.com

测试与百度服务器的网络连接

ping -c 5 www.google.com

向谷歌服务器发送 5 个 ICMP 包进行测试

ping -i 2 192.168.1.1

每 2 秒向 192.168.1.1 发送一个 ICMP 包

ifconfig eth0 up

启用 eth0 网络接口

ifconfig eth0 down

禁用 eth0 网络接口

ifconfig eth0 192.168.1.100 netmask 255.255.255.0

为 eth0 接口配置 IP 地址和子网掩码

netstat -an

显示系统中所有网络连接的详细信息

netstat -t

显示所有 TCP 连接信息

netstat -u

显示所有 UDP 连接信息

traceroute www.example.com

跟踪到 www.example.com 的路由


进程管理

命令语法常用选项及说明
psps [选项]-ef:显示所有进程的详细信息,包括父进程 ID 等
-aux:以 BSD 风格显示所有进程信息,包含 CPU 和内存使用情况
toptop [选项]-d 秒数:指定刷新间隔时间
-b:以批处理模式运行 top,常用于将输出结果重定向到文件中,便于后续分析。
-n <次数>:指定 top 命令更新信息的次数。结合 -b 选项使用,可获取指定次数的系统信息。
-p <进程号>:仅显示指定进程号的信息。可以指定多个进程号,用逗号分隔。
-U <用户名>:仅显示指定用户所拥有的进程信息。例如,top -U testuser 只显示 testuser 用户的进程信息。
-u <用户名>:与 -U 类似,仅显示指定用户所拥有的进程信息。
-i:不显示处于僵死状态的进程。僵死进程是指已经结束但父进程未回收其资源的进程。
-c:显示进程的完整命令行信息,而不仅仅是进程名。
-s:使 top 命令运行在安全模式下,禁止一些危险操作,如使用交互式命令时避免误操作。
-H:显示线程信息,而不是进程信息。
toptop+按键

h 或 ?:显示帮助画面,列出所有可用的交互式命令。

q:退出 top 命令。

M:按照内存使用率对进程进行排序,内存使用率高的进程排在前面。

P:按照 CPU 使用率对进程进行排序,CPU 使用率高的进程排在前面T:按照进程的累计运行时间(即进程的运行时长)对进程进行排序,运行时间长的进程排在前面。

k:终止指定进程。按下后提示输入要终止的进程号,还能选择发送的信号类型(默认为 -15,即 SIGTERM 信号;输入 -9 则发送 SIGKILL 信号强制终止)。

r:重新调整指定进程的优先级。按下后输入要调整优先级的进程号,再输入新的优先级值(数值越小,优先级越高)。

c:切换显示进程的完整命令行信息或仅显示进程名。

i:切换是否显示处于僵死状态的进程。

1:显示每个 CPU 核心的详细信息,再次按下则恢复显示整体 CPU 信息。

u:仅显示指定用户所拥有的进程信息,按下后输入用户名。

f 或 F:进入字段选择界面,可通过该界面选择要在 top 中显示的字段以及对字段进行排序等操作。

o 或 O:进入字段排序设置界面,用于调整字段的显示顺序。

s:设置 top 命令更新信息的时间间隔,按下后输入新的时间间隔(秒)。

l:切换是否显示 top 输出的头部信息(如系统运行时间、负载等)。

t:切换是否显示 CPU 状态信息。

m:切换是否显示内存状态信息。

killkill [信号] 进程号-9:强制终止进程(SIGKILL 信号)
-15:正常终止进程(SIGTERM 信号,默认)
pkillpkill [选项] 进程名-f:根据进程名的完整命令行匹配

命令

示例

ps -ef

显示系统中所有进程的详细信息

ps -aux

以 BSD 风格显示所有进程的 CPU 和内存使用情况

top

实时显示系统中进程的资源使用情况

top -d 5

每 5 秒刷新一次 top 显示的内容

kill 1234

正常终止进程号为 1234 的进程

kill -9 5678

强制终止进程号为 5678 的进程

pkill firefox

终止所有名为 firefox 的进程

pkill -f "python script.py"

终止所有命令行包含 python script.py 的进程

进程信息详解 

 


权限管理

命令语法常用选项及说明
chmodchmod [选项] 权限模式 文件或目录名- 权限模式可以用数字(如 755)或符号(如 u+rwx,g+rx,o+rx)表示
-R:递归修改目录及其子目录和文件的权限
chownchown [选项] 所有者:组名 文件或目录名          注:只有root可用-R:递归修改目录及其子目录和文件的所有者和组
chgrpchgrp [选项] 组名 文件或目录名-R:递归修改目录及其子目录和文件的所属组

命令

示例

chmod 755 script.sh

将 script.sh 的权限设置为所有者可读可写可执行,组用户和其他用户可读可执行

chmod -R 777 shared_dir

递归将 shared_dir 目录及其内容的权限设置为所有人可读可写可执行

chown user:group file.txt

将 file.txt 的所有者设置为 user,所属组设置为 group

chown :group file.txt

将 file.txt 的所属组设置为 group

chown user file.txt

将 file.txt 的所有者设置为 user

chown -R root:root /var/www

递归将 /var/www 目录及其内容的所有者和组设置为 root

chgrp developers project_dir

将 project_dir 的所属组设置为 developers

chgrp -R sales sales_data

递归将 sales_data 目录及其内容的所属组设置为 sales

 


压缩与解压缩

命令语法常用选项及说明
tartar [选项] 压缩包名 文件或目录-zcvf:创建 gzip 压缩的 tar 包
-jcvf:创建 bzip2 压缩的 tar 包
-zxvf:解压缩 gzip 压缩的 tar 包
-jxvf:解压缩 bzip2 压缩的 tar 包
gzipgzip [选项] 文件-d:解压缩文件
bzip2bzip2 [选项] 文件-d:解压缩文件

命令

示例

tar -zcvf archive.tar.gz file1.txt file2.txt

创建包含 file1.txt 和 file2.txt 的 gzip 压缩 tar 包

tar -jxvf backup.tar.bz2

解压缩 bzip2 压缩的 backup.tar.bz2 包

gzip file.txt

压缩 file.txt 为 file.txt.gz

gzip -d file.txt.gz

解压缩 file.txt.gz 为 file.txt

bzip2 large_file.txt

压缩 large_file.txt 为 large_file.txt.bz2

bzip2 -d large_file.txt.bz2

解压缩 large_file.txt.bz2 为 large_file.txt

 


系统信息相关

命令语法常用选项及说明
unameuname [选项]-a:显示所有系统信息,包括内核名称、主机名、内核版本等
-r:显示内核版本
dfdf [选项]-h:以人类可读的方式显示磁盘使用情况
dudu [选项] 目录名-h:以人类可读的方式显示目录大小
-s:只显示总大小
freefree [选项]-h:以人类可读的方式显示内存使用情况
iostatiostat [-x][num1][num2]

查看CPU、磁盘的相关信息
-x,显示更多信息
num1:数字,刷新间隔

num2:数字,刷新几次
tps指的是该设备每秒的传输次数(i/o请求次数)

datedate [选项] [+格式] [-s 时间] [-d 时间] [-u]通用选项
--help:显示帮助信息然后退出。
--version:显示版本信息然后退出。
时间显示控制选项
-d <string>--date=<string>:按照指定的字符串来显示日期和时间。字符串可以是具体日期,如"2025-03-10";也可以是相对时间描述,如"2 days ago"表示两天前,"next month"表示下个月等。
-u--utc--universal:以世界协调时(UTC)显示日期和时间。
-r <file>--reference=<file>:显示指定文件的最后修改时间。
时间设置选项
-s <string>--set=<string>:设置系统日期和时间为指定的字符串内容,需要 root 权限。例如date -s "2025-03-05 18:30:00"将系统时间设置为 2025 年 3 月 5 日 18 点 30 分。
时间格式选项(FORMAT)
%a:星期几的英文缩写,如MonTue等。
%A:星期几的英文全称,如MondayTuesday等。
%b:月份的英文缩写,如JanFeb等。
%B:月份的英文全称,如JanuaryFebruary等。
%c:日期和时间的本地表示,如Wed Mar 6 12:30:00 2025
%C:年份的前两位数字,如对于 2025 年,显示为20
%d:一个月中的第几天,两位数表示,范围是0131
%D:日期,格式为mm/dd/yy,如03/06/25
%e:一个月中的第几天,一位数的日期前不加 0,如 6表示 6 号。
%F:完整的日期格式,等价于%Y-%m-%d,如2025-03-06
%g:ISO 8601 格式年份的后两位数字,如25
%G:ISO 8601 格式的年份,如2025
%h:与%b相同,月份的英文缩写。
%H:小时,24 小时制,以0023表示。
%I:小时,12 小时制,以0112表示。
%j:一年中的第几天,以001366表示。
%k:小时,24 小时制,一位数的小时前不加 0,如 6表示 6 点。
%l:小时,12 小时制,一位数的小时前不加 0,如 6表示 6 点。
%m:月份,以0112表示。
%M:分钟,以0059表示。
%n:换行符。
%p:上午或下午,AMPM
%P:上午或下午,ampm
%r:12 小时制的时间,格式为hh:mm:ss [AP]M,如12:30:00 PM
%R:24 小时制的时间,格式为hh:mm,如12:30
%s:从 1970 年 1 月 1 日 00:00:00 UTC 到目前为止的秒数。
%S:秒,以0060表示。
%t:制表符。
%T:时间,格式为%H:%M:%S,如12:30:00
%u:星期几,以17表示,1表示星期一。
%U:一年中的第几周,以0053表示,以星期天为一周的第一天。
%V:ISO 8601 格式的一年中的第几周,以0153表示。
%w:星期几,以06表示,0表示星期天。
%W:一年中的第几周,以0053表示,以星期一为一周的第一天。
%x:日期的本地表示形式,如03/06/25
%X:时间的本地表示形式,如12:30:00
%y:年份的后两位数字,如25
%Y:年份,如2025
%z:时区偏移量,格式为+HHMM-HHMM,如+0800
%Z:时区名称,如CST

命令

示例

uname -a

显示系统的所有信息

uname -r

显示当前内核版本

df

显示系统磁盘分区的使用情况

df -h

以易读的格式显示磁盘使用情况

du /home/user

显示 /home/user 目录及其子目录的磁盘使用情况

du -sh /var/log

以易读格式显示 /var/log 目录的总大小

free

显示系统内存的使用情况

free -h

以易读格式显示内存使用情况


CentOS:yum管理器命令

类别命令功能描述

语法:
yum [-y] [install | remove |search] 软件名称 

选项:
-y:自动回答yes

安装yum install [package_name]安装指定软件包
yum install -y [package_name]自动确认安装指定软件包
更新yum update更新所有可更新的软件包
yum update [package_name]更新指定软件包
卸载yum remove [package_name]卸载指定软件包
搜索yum search [keyword]根据关键字搜索软件包
显示信息yum info [package_name]显示指定软件包的详细信息
列出软件包yum list列出所有可用和已安装的软件包
yum list installed列出已安装的软件包
yum list available列出可用的软件包
清理缓存yum clean all清理所有 yum 缓存(包括软件包、元数据等)
软件组管理yum grouplist列出可用的软件包组
yum groupinstall [group_name]安装指定的软件包组
yum groupremove [group_name]移除指定的软件包组
显示依赖关系yum deplist [package_name]显示指定软件包的依赖关系
检查更新yum check-update检查哪些软件包有可用更新
锁定软件包yum versionlock add [package_name]锁定指定软件包版本,使其不被更新
yum versionlock list列出已锁定版本的软件包
yum versionlock delete [package_name]解除指定软件包的版本锁定
yum versionlock clear清除所有软件包的版本锁定

Ubuntu:apt管理器命令

类别命令功能描述示例
安装apt install [package_name]安装指定的软件包apt install nginx
apt install -y [package_name]自动确认并安装指定软件包及其依赖apt install -y nodejs
更新apt update刷新软件源列表,获取最新的软件包信息apt update
apt upgrade更新已安装的软件包到最新版本,但不处理依赖变化导致的软件包增减apt upgrade
apt full - upgrade更新软件包,处理依赖变化,可能会删除或添加软件包以确保系统稳定apt full - upgrade
卸载apt remove [package_name]卸载指定软件包,但保留其配置文件apt remove apache2
apt purge [package_name]卸载指定软件包并删除其配置文件apt purge postgresql
查询apt search [keyword]根据关键字搜索相关软件包apt search python3
apt show [package_name]显示指定软件包的详细信息,如版本、依赖等apt show docker.io
apt list列出所有软件包apt list
apt list --installed列出已安装的软件包apt list --installed
apt list --upgradable列出可升级的软件包apt list --upgradable
依赖处理apt build - dep [package_name]安装编译指定软件包所需的依赖包apt build - dep linux - headers
标记apt - mark hold [package_name]标记软件包,使其不会被自动更新apt - mark hold openssh - server
apt - mark unhold [package_name]取消软件包的标记,使其可以被自动更新apt - mark unhold firefox
清理apt clean清理所有已下载的软件包缓存apt clean
apt autoclean清理不再需要的软件包缓存


用户用户组(root)

命令功能语法常用选项及示例
用户 相关命令
useradd创建新用户账户useradd [选项] 用户名-u:指定用户的 UID,如useradd -u 1001 newuser
-c:添加用户注释,如useradd -c "Test User" newuser
-m:自动创建用户的主目录
-k:指定用户主目录的骨架目录
passwd设置或更改用户密码,管理用户密码有效期等属性passwd [选项] [用户名]-l:锁定用户账户,如passwd -l newuser
-u:解锁用户账户,如passwd -u newuser
-d:删除用户的密码,如passwd -d newuser
-e:强制用户在下次登录时更改密码,如passwd -e newuser
usermod修改用户账户的属性usermod [选项] 用户名-L:锁定用户账户,等同于passwd -l
-U:解锁用户账户,等同于passwd -u
-a -G:将用户添加到附加用户组,如usermod -a -G group1 newuser
userdel删除用户账户userdel [选项] 用户名-r:删除用户的同时,删除其主目录和邮件 spool,如userdel -r newuser
id显示用户的 UID、GID 及所属用户组等信息id [选项] [用户名]-u:仅显示用户的 UID,如id -u newuser
-g:仅显示用户的 GID,如id -g newuser
-G:显示用户所属的所有组的 GID,如id -G newuser
su切换用户身份su [选项] [用户名]-:切换用户并同时切换到该用户的环境,如su - newuser
sudo以超级用户或其他用户身份执行命令sudo [选项] 命令-u:指定以某个用户身份执行命令,如sudo -u newuser command
-l:列出当前用户可以使用 sudo 执行的命令,如sudo -l
用户组     相关命令
groupadd创建新的用户组groupadd [选项] 用户组名-g:指定用户组的 GID,如groupadd -g 1001 newgroup
groupdel删除用户组groupdel 用户组名无特殊选项,如groupdel newgroup
groupmod修改用户组的属性groupmod [选项] 用户组名-n:修改用户组名,如groupmod -n newname oldname
-g:修改用户组的 GID,如groupmod -g 1002 newgroup
groups显示用户所属的用户组groups [用户名]无特殊选项,若不指定用户名,则显示当前用户所属的用户组,如groups newuser
gpasswd管理用户组的密码和成员gpasswd [选项] 用户组-a:将用户添加到用户组,如gpasswd -a newuser newgroup
-d:将用户从用户组中删除,如gpasswd -d newuser newgroup
-M:设置用户组的成员列表,如gpasswd -M user1,user2 newgroup
getent从系统数据库(如本地文件或 NSS 服务)获取条目信息,可查用户、组、主机等getent [选项] 数据库名 [键值 ...]1. -s, --service:指定 NSS 服务。
示例:getent -s ldap passwd,从 LDAP 取用户信息。
2. -h, --help:显示帮助信息。
示例:getent --help
3. -V, --version:显示版本信息。
示例:getent --version
4. 常见数据库查询示例
getent passwd:查所有用户信息。
用户名:密码:用户ID:组ID:描述信息:home目录:终端
getent passwd root:查 root 用户信息。
getent group:查所有用户组信息。
getent group sudo:查 sudo 组信息。
getent hosts:查所有主机信息。
getent hosts localhost:查 localhost 主机信息。

其他命令
命令语法选项
findfind 起始路径  [选项]  [名称或大小]

-name:以名称查询

-size:以大小查询

vi       编辑文件
echoecho 输出的内容

在命令行内输出指定内容,类似print

` ` :被这个符合包围,会被视作命令执行

su su [-] [用户名]-符号是可选的,表示是否在切换用户后加载环境变量
root :超级管理员
切换用户后,可以通过exit命令退回上一个用户,也可以使用快捷键:ctrl+d
sudo     sudo 其他命令为这条命令临时赋予root授权
需要为普通用户配置sudo认证
重定向符号>  与 >>

>:将左侧命令的结果,覆盖写入到符合右侧指定的文件夹中     (覆盖老数据)

>>:将左侧命令的结果,追加写入到符合右侧指定的文件夹中 (即插入新数据)

history       history

查看历史输入过的命令
!命令前缀:从下往上找到第一个与命令前缀相同的命令执行

eg:!c,从历史命令中从下往上执行第一个c开头的命令

命令介绍
find  / -name "test*"从根目录开始以名字搜索全部以test开头的文件,*为通配符
find  /home -size -10K查找home目录下小于10KB的文件

 


Vi编辑器

模式命令说明
命令模式无(启动默认进入)启动 vi 后自动进入,用于执行移动光标、文本编辑等操作的基础模式
命令模式h光标向左移动一个字符
命令模式j光标向下移动一行
命令模式k光标向上移动一行
命令模式l光标向右移动一个字符
命令模式Ctrl + f向前翻一页(屏幕)
命令模式Ctrl + b向后翻一页(屏幕)
命令模式0将光标移动到当前行的行首(第一个字符处)
命令模式^将光标移动到当前行的第一个非空白字符处
命令模式$将光标移动到当前行的行尾
命令模式gg将光标移动到文件的开头
命令模式G将光标移动到文件的末尾
命令模式nGn为数字)将光标移动到文件的第n
命令模式x删除光标所在位置的字符
命令模式dd删除光标所在的整行
命令模式nddn为数字)删除从当前行开始的n
命令模式yy复制光标所在的整行
命令模式nyyn为数字)复制从当前行开始的n
命令模式p在光标之后粘贴已复制或剪切的内容
命令模式P在光标之前粘贴已复制或剪切的内容
命令模式u撤销上一次的操作
命令模式Ctrl + r恢复之前撤销的操作
命令模式i进入插入模式,在光标当前位置前插入文本
命令模式a进入插入模式,在光标当前位置后插入文本
命令模式o进入插入模式,在光标所在行的下一行插入新行
命令模式O进入插入模式,在光标所在行的上一行插入新行
插入模式Esc退出插入模式,返回命令模式
末行模式
(底线命令模式)
:(从命令模式输入进入)进入末行模式,用于执行保存、退出、查找替换等命令
末行模式w保存当前编辑的文件
末行模式w [文件名]将当前编辑的内容另存为指定的文件名
末行模式q若文件未修改,正常退出 vi;若文件已修改,提示保存
末行模式q!强制退出 vi,不保存对文件所做的任何修改
末行模式wq保存文件并退出 vi
末行模式x功能与wq类似,保存文件并退出 vi,但如果文件未修改则不执行写操作,直接退出
末行模式/[字符串]从光标位置开始向下查找指定的字符串,按n查找下一个匹配项,按N查找上一个匹配项
末行模式?[字符串]从光标位置开始向上查找指定的字符串,按n查找下一个匹配项,按N查找上一个匹配项
末行模式:%s/old/new/g在整个文件中,将所有匹配old的字符串替换为newg表示全局替换(一行中多个匹配都替换)
末行模式n1,n2s/old/new/gn1n2为行号)在文件的第n1行到第n2行之间,将所有匹配old的字符串替换为newg表示全局替换
末行模式set nu显示行号
末行模式set nonu取消显示行号
末行模式set ic设置查找时忽略大小写
末行模式set noic取消查找时忽略大小写的设置
末行模式r [文件名]将指定文件的内容读取并插入到当前光标所在位置

Vi/Vim 工作模式 


 管道符:|


快捷键(不区分大小写)

快捷键功能应用场景
Ctrl+C中断当前正在执行的命令或程序当命令执行出现错误或不需要继续运行时,可使用该快捷键停止,如在执行长时间运行的find命令查找大量文件时,若想中途停止就可以按Ctrl+C
Ctrl+Z将当前任务暂停并放入后台比如在使用vi编辑器编辑文件时,突然需要执行其他命令,但又不想关闭vi,就可以按Ctrl+Z暂停vi,然后在后台执行其他操作,之后再使用fg命令将vi恢复到前台继续编辑。
Ctrl+D表示输入结束,常用于退出当前终端或关闭当前输入流在命令行输入完命令后,若需要告诉系统输入已结束,可按Ctrl+D;在vi编辑器的命令模式下按Ctrl+D可向下翻半页。
Ctrl+A将光标移动到当前行的行首在命令行输入较长命令时,若想快速回到行首修改命令开头部分,按Ctrl+A即可。
Ctrl+E将光标移动到当前行的行尾Ctrl+A相反,当需要快速到达行尾添加内容或修改命令末尾部分时使用。
Ctrl+L清屏,相当于执行clear命令当终端界面显示内容过多,想要清理屏幕以便查看新的输出内容时使用。
Ctrl+U删除从光标位置到行首的所有字符在命令行输入错误内容,且错误部分在光标之前,可使用Ctrl+U快速删除。
Ctrl+K删除从光标位置到行尾的所有字符Ctrl+U相反,用于删除光标后的内容。
Ctrl+R在历史命令中搜索当忘记之前执行过的命令具体内容时,按Ctrl+R可进入搜索模式,输入关键字即可搜索历史命令。
Ctrl+键盘左键向左跳一个单词
Ctrl+键盘右键向右跳一个单词
Alt+F按单词向前移动光标在命令行或文本编辑器中,需要按单词为单位移动光标时使用,例如在编辑一个较长的命令,想快速移动到下一个单词处进行修改。
Alt+B按单词向后移动光标Alt+F相反,用于按单词向后移动光标。

软件控制命令systemctl

类别命令功能描述
服务管理systemctl start [service_name]启动指定的服务
systemctl stop [service_name]停止指定的服务
systemctl restart [service_name]重启指定的服务
systemctl reload [service_name]重新加载指定服务的配置文件,通常不会中断服务运行
systemctl status [service_name]查看指定服务的状态,包括是否正在运行、最近一次启动时间等
服务开机启动管理systemctl enable [service_name]设置指定服务在系统启动时自动启动
systemctl disable [service_name]设置指定服务在系统启动时不自动启动
systemctl is - enabled [service_name]检查指定服务是否设置为开机自动启动
服务状态查询systemctl is - active [service_name]检查指定服务当前是否正在运行
systemctl is - failed [service_name]检查指定服务是否处于失败状态
服务列表查看systemctl list - units --type=service列出所有正在运行的服务
systemctl list - units --type=service --all列出所有服务,包括已停止的服务
目标(Target)管理systemctl isolate [target_name]切换到指定的目标运行级别
systemctl get - default查看系统的默认目标运行级别
systemctl set - default [target_name]设置系统的默认目标运行级别
系统关机与重启systemctl poweroff关闭系统
systemctl reboot重启系统
systemctl suspend使系统进入睡眠状态
systemctl hibernate使系统进入休眠状态
服务依赖关系查看systemctl list - dependencies [service_name]查看指定服务的依赖关系
服务分类服务名称功能描述
系统基础服务acpid高级配置与电源接口服务,处理电源管理事件,如关机、休眠、唤醒等操作
atd用于安排在指定时间执行一次任务的服务,与 crond 用于定期重复任务不同
chronyd网络时间协议(NTP)客户端服务,用于同步系统时间与网络上的时间服务器
dbus消息总线系统,为应用程序之间提供通信机制,许多系统服务依赖它进行交互
irqbalance自动将硬件中断请求(IRQ)均衡分配到多个 CPU 核心,以提高系统性能
lvm2-monitor逻辑卷管理器(LVM)监控服务,确保系统能够实时检测 LVM 卷的状态和变化
systemd-journald系统日志记录服务,负责收集和存储系统和服务产生的日志信息,替代传统的 syslog 部分功能
systemd-udevd设备管理器服务,负责在系统启动和运行过程中动态管理设备的添加、移除和配置
网络服务bindBIND(Berkeley Internet Name Domain)是最常用的 DNS(域名系统)服务器软件,用于域名解析
dhcpdDHCP(动态主机配置协议)服务器服务,自动为网络中的客户端分配 IP 地址等网络配置信息
dovecot开源的 IMAP 和 POP3 邮件服务器,用于接收和存储用户的电子邮件
eximpostfix 或 sendmail常见的邮件传输代理(MTA)服务,负责在网络中发送和接收电子邮件
named与 bind 相关,是 BIND DNS 服务器的守护进程
samba实现 SMB/CIFS 协议的服务,允许 Linux 系统与 Windows 系统进行文件和打印机共享
vsftpd一个安全且高性能的 FTP(文件传输协议)服务器服务,用于在网络上进行文件传输
数据库服务mongodb开源的文档型数据库管理系统,采用 JSON 格式存储数据,适合处理大量非结构化数据
redis开源的内存数据结构存储系统,可用作数据库、缓存和消息中间件
监控与性能管理服务collectd系统和应用程序监控守护进程,收集系统性能指标并存储或发送到其他系统进行分析
zabbix-server开源的企业级监控解决方案,可监控各种网络设备、服务器和应用程序的状态和性能
容器与虚拟化服务crio符合 OCI(开放容器倡议)标准的容器运行时,用于在 Kubernetes 等容器编排系统中运行容器
k3s轻量级的 Kubernetes 发行版,适合在资源受限的环境中部署和运行容器化应用
minikube用于在本地快速搭建单节点 Kubernetes 集群的工具,方便开发和测试 Kubernetes 应用
podman一个无守护进程的容器引擎,可替代 Docker 进行容器的创建、管理和运行
桌面环境相关服务gdm(GNOME 桌面)GNOME 桌面环境的显示管理器,负责用户登录界面的显示和管理
kdm(KDE 桌面)KDE 桌面环境的显示管理器,提供用户登录界面和会话管理功能
lightdm轻量级的显示管理器,可用于多种桌面环境
sddm现代的跨桌面环境显示管理器,具有简洁的界面和良好的性能
安全相关服务auditd系统审计服务,记录系统活动和用户操作,用于安全审计和合规性检查
clamdClamAV 杀毒软件的守护进程,用于实时扫描文件和邮件,检测病毒和恶意软件
selinux强制访问控制(MAC)系统,增强系统的安全性,限制进程和用户的访问权限
firewalldCentOS 等系统中动态的防火墙管理工具,支持网络区域(zone)概念,可根据不同场景配置不同的规则,能方便地通过命令行或图形界面进行操作,实现对网络连接的控制和防护
ufw(Uncomplicated Firewall)Ubuntu 等系统中简单易用的防火墙配置工具,提供了简洁的命令行接口,用于快速设置和管理防火墙规则,适合初学者和对防火墙配置要求不特别复杂的场景
iptablesLinux 系统中传统的防火墙工具,通过命令行操作来配置各种规则链,对网络数据包进行过滤、转发、NAT 等操作,功能强大但配置相对复杂,常用于对网络安全有精细控制需求的场景
nftables新一代的 Linux 防火墙框架,旨在取代 iptables,提供了更高效、灵活和简洁的语法,支持更复杂的网络规则配置和流量管理


链接命令ln

类别命令功能描述
创建硬链接ln [源文件] [目标文件]为源文件创建一个硬链接文件。
硬链接与源文件指向同一个 inode(索引节点)
本质上是同一个文件的不同访问入口,删除其中一个不影响其他链接访问数据。
创建软链接ln -s [源文件或目录] [目标文件或目录]为源文件或目录创建一个软链接。
软链接类似于 Windows 系统中的快捷方式,它保存的是源文件或目录的路径信息,删除源文件后软链接将失效。
覆盖已有链接ln -f [源文件] [目标文件]如果目标文件已存在,强制覆盖它来创建新的链接。可结合 -s 用于软链接,也可单独用于硬链接。
详细输出ln -v [源文件] [目标文件]在创建链接时显示详细的操作信息,告知用户链接是否成功创建。
跨文件系统创建软链接ln -s [源文件] [目标文件]由于硬链接不能跨文件系统创建,而软链接不受此限制,可用于在不同文件系统间建立关联。

Linux操作系统命令

命令分类命令语法常用选项及示例
系统信息相关unameuname [选项]-a:显示所有信息,如uname -a
-m:显示机器硬件架构,如uname -m
-r:显示内核发行版本,如uname -r
系统信息相关dmidecodedmidecode [选项]-q:安静模式,如dmidecode -q
-t type:显示指定类型 DMI 信息,如dmidecode -t 1
系统信息相关hdparmhdparm [选项] [设备名]-i:显示硬盘硬件信息,如hdparm -i /dev/sda
-t:进行硬盘读取测试,如hdparm -t /dev/sda
-T:测试硬盘缓存读取速度,如hdparm -T /dev/sda
系统信息相关datedate [选项] [+格式]-s:设置系统日期和时间,如date -s "2024-10-01 12:00:00"+格式:按指定格式输出,如date +"%Y-%m-%d %H:%M:%S"
文件和目录操作cdcd [目录名]cd /home/user:进入指定目录;
cd..:返回上一级目录;
cd ~:回到用户主目录
文件和目录操作pwdpwd直接执行显示当前工作目录完整路径
文件和目录操作lsls [选项] [目录名]-l:长格式显示,如ls -l
-a:显示所有文件,如ls -a
-h:与-l配合以人类可读方式显示大小,如ls -lh
文件和目录操作mkdirmkdir [选项] 目录名-p:创建多级目录,如mkdir -p /tmp/test/dir
文件和目录操作rmrm [选项] 文件或目录名-f:强制删除,如rm -f file.txt
-r:递归删除目录,如rm -r test_dir
-rf:强制递归删除,如rm -rf test_dir
文件和目录操作mvmv [选项] 源文件或目录 目标文件或目录mv file1.txt file2.txt:重命名文件;
mv file.txt /home/user:移动文件
文件和目录操作cpcp [选项] 源文件或目录 目标文件或目录-r:递归复制目录,如cp -r dir1 dir2
-a:归档复制,如cp -a file.txt /backup
文本处理catcat [选项] 文件1 [文件2 ...]-n:显示行号,如cat -n file.txt
文本处理tactac [文件]tac file.txt:反向显示文件内容
文本处理grepgrep [选项] 模式 文件名-i:忽略大小写,如grep -i "hello" file.txt
-r:递归搜索目录,如grep -r "keyword" /home
文本处理sedsed [选项] '脚本命令' 文件-i:直接修改文件内容,如sed -i 's/old/new/g' file.txt
进程管理psps [选项]-ef:显示所有进程详细信息,如ps -ef
-aux:以 BSD 风格显示进程信息,如ps -aux
进程管理toptop [选项]-d 秒数:指定刷新间隔秒数,如top -d 5
网络相关ifconfigifconfig [网络接口名] [选项]-a:显示所有网络接口的信息,包括处于非活动状态(down)的接口
up:启用指定的网络接口
down:禁用指定的网络接口

ifconfig [接口名] [IP地址]:为指定的网络接口配置 IP 地址

ifconfig [接口名] [IP地址] netmask [子网掩码]:同时为指定接口配置 IP 地址和子网掩码

ifconfig [接口名] broadcast [广播地址]:为指定的网络接口配置广播地址

ifconfig [接口名] hw ether [MAC地址]:修改指定网络接口的 MAC 地址
网络相关pingping [选项] 目标地址-c 次数:指定发送 ICMP 包的次数,如ping -c 5 www.baidu.com
-i 间隔:指定发送 ICMP 包的间隔秒数,如ping -i 2 www.baidu.com
网络相关netstatnetstat [选项]-an:显示所有网络连接详细信息,如netstat -an
-t:显示 TCP 连接,如netstat -t
-u:显示 UDP 连接,如netstat -u
权限管理chmodchmod [选项] 权限模式 文件或目录名权限模式如755
chmod 755 file.txt:设置文件权限;

-R:递归修改目录权限,如chmod -R 755 dir
权限管理chownchown [选项] 所有者:组名 文件或目录名-R:递归修改目录所有者和组
chown -R user:group dir
压缩和解压缩tartar [选项] 压缩包名 文件或目录-zcvf:创建 gzip 压缩的 tar 包,如tar -zcvf file.tar.gz file1 file2
-zxvf:解压缩 gzip 压缩的 tar 包,如tar -zxvf file.tar.gz
压缩和解压缩gzipgzip [选项] 文件-d:解压缩文件,如gzip -d file.txt.gz
压缩和解压缩bzip2bzip2 [选项] 文件-d:解压缩文件,如bzip2 -d file.txt.bz2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值