一、Linux 常用命令速查表

编号 命令 功能
1 ls 列出当前目录中的文件和子目录
2 pwd 显示当前工作目录的路径
3 cd 切换工作目录
4 mkdir 创建新目录
5 rmdir 删除空目录
6 rm 删除文件或目录
7 cp 复制文件或目录
8 mv 移动或重命名文件或目录
9 touch 创建空文件或更新文件的时间戳
10 cat 连接和显示文件内容
11 more/less 逐页显示文本文件内容
12 head/tail 显示文件的前几行或后几行
13 grep 在文件中搜索指定文本
14 ps 显示当前运行的进程
15 kill 终止进程
16 ifconfig/ip 查看和配置网络接口信息
17 ping 测试与主机的连通性
18 wget/curl 从网络下载文件
19 chmod 修改文件或目录的权限
20 chown 修改文件或目录的所有者
21 tar 压缩和解压文件和目录
22 df/du 显示磁盘使用情况
23 mount/umount 挂载和卸载文件系统
24 psql/mysql 与PostgreSQL或MySQL数据库交互的命令行工具
25 top/htop 显示系统资源的实时使用情况和进程信息
26 ssh 远程登录到其他计算机
27 scp 安全地复制文件到远程主机或从远程主机复制到本地
28 find 在文件系统中查找文件和目录
29 grep 在文本中搜索匹配的行,并使用正则表达式进行高级搜索
30 sed 流编辑器,用于文本处理和替换
31 awk 用于文本处理和数据提取的工具
32 ssh-keygen 生成SSH密钥对,用于身份验证远程服务器
33 date 显示或设置系统日期和时间
34 echo 将文本输出到标准输出
35 ln 创建硬链接或符号链接
36 uname 显示系统信息
37 shutdown/reboot 关闭或重新启动系统
38 who/w 显示当前登录的用户信息
39 curl 用于与网络资源交互,支持各种协议
40 zip/unzip 压缩和解压ZIP文件
41 chmod/chown 修改文件或目录的权限和所有者
42 useradd/userdel 添加和删除用户账户
43 passwd 更改用户密码
44 cron 定时任务管理器,用于自动执行计划任务
45 uptime 显示系统的运行时间和负载情况
46 hostname 显示或设置计算机的主机名
47 iptables/ufw 配置防火墙规则
48 netstat/ss 显示网络连接信息
49 ps/top/htop 显示进程信息和系统资源使用情况
50 history 查看命令历史记录
51 free 显示系统内存使用情况
52 lsblk/fdisk 查看磁盘分区信息和管理磁盘
53 nc 用于网络连接测试和数据传输
54 stat 显示文件或目录的详细信息
55 nmcli 管理网络连接的命令行工具
56 tailf 实时追踪文件的末尾
57 scp 安全地将文件从本地复制到远程主机,或从远程主机复制到本地
58 rsync 在本地和远程系统之间同步文件和目录
59 dd 复制和转换文件
60 sudo 以超级用户权限运行命令

二、Linux 常用命令总结

类别 命令 功能说明
文件与目录操作 ls 列出目录内容
pwd 显示当前工作目录路径
cd 切换工作目录
mkdir 创建新目录
rmdir 删除空目录
rm 删除文件或目录
cp 复制文件或目录
mv 移动或重命名文件或目录
touch 创建空文件或更新文件时间戳
ln 创建硬链接或符号链接
文件内容查看与编辑 cat 连接并显示文件内容
more/less 逐页查看文件内容
head/tail 查看文件的前几行或后几行
grep 在文件中搜索指定文本内容
sed 流编辑器,用于文本处理和替换
awk 文本处理工具,用于提取数据
系统与进程管理 ps 显示当前运行的进程
kill 终止进程
top/htop 实时监视系统资源和进程信息
df/du 查看磁盘使用情况
free 查看系统内存使用情况
uptime 显示系统运行时间和负载
history 查看命令历史记录
网络操作 ifconfig/ip 查看和配置网络接口信息
ping 测试网络连通性
wget/curl 从网络下载文件或与网络资源交互
ssh 远程登录到其他计算机
scp 安全地复制文件到远程主机或从远程主机复制到本地
netstat/ss 查看网络连接信息
nc 测试网络连接和传输数据
文件压缩与解压 tar 用于文件和目录的压缩与解压
zip/unzip 用于ZIP文件的压缩与解压
用户管理与权限设置 chmod 修改文件或目录的权限
chown 修改文件或目录的所有者
useradd/userdel 添加或删除用户账户
passwd 更改用户密码
系统管理与配置 date 显示或设置系统日期和时间
uname 显示系统信息
shutdown/reboot 关闭或重启系统
hostname 显示或设置计算机的主机名
cron 定时任务管理器,用于自动执行计划任务
磁盘管理 lsblk/fdisk 查看磁盘分区信息并管理磁盘
dd 复制和转换文件
安全与防火墙 ssh-keygen 生成SSH密钥对
iptables/ufw 配置防火墙规则
其他 echo 输出文本到标准输出
stat 显示文件或目录的详细信息
nmcli 管理网络连接的命令行工具

三、Linux 常用命令及其使用举例

类别 命令 示例 示例说明 说明
文件与目录操作 ls ls -l 列出目录内容并显示详细信息 列出当前目录中的文件和子目录
pwd pwd 显示当前工作目录路径 显示当前工作目录的绝对路径
cd cd /home/user 切换到/home/user目录 切换到指定目录
mkdir mkdir new_folder 创建名为new_folder的新目录 创建一个新目录
rmdir rmdir old_folder 删除名为old_folder的空目录 删除空目录
rm rm file.txt 删除名为file.txt的文件 删除指定文件
rm -r rm -r old_folder 递归删除名为old_folder的目录及其内容 删除目录及其内容
cp cp file.txt backup/ 复制file.txtbackup/目录 复制文件或目录
mv mv old_name.txt new_name.txt 重命名old_name.txtnew_name.txt 移动或重命名文件或目录
touch touch new_file.txt 创建一个名为new_file.txt的空文件 创建空文件或更新文件时间戳
ln ln file.txt link_to_file 创建file.txt的硬链接link_to_file 创建硬链接或符号链接
文件内容查看与编辑 cat cat file.txt 显示file.txt的内容 连接并显示文件内容
more more file.txt 逐页显示file.txt的内容 逐页显示文件内容
less less file.txt 逐页显示file.txt的内容,支持向前和向后滚动 逐页显示文件内容,支持向前向后滚动
head head -n 10 file.txt 显示file.txt的前10行 显示文件的前几行
tail tail -n 20 file.txt 显示file.txt的后20行 显示文件的后几行
grep grep 'search_term' file.txt file.txt中搜索search_term 在文件中搜索指定文本
sed sed 's/old/new/' file.txt 替换file.txt中的oldnew 流编辑器,用于文本处理和替换
awk awk '{print $1}' file.txt 提取并显示file.txt中的第一列数据 文本处理工具,用于提取数据
系统与进程管理 ps ps aux 显示所有进程的信息 显示当前运行的进程
kill kill 1234 终止进程ID为1234的进程 终止指定进程
top top 实时监视系统资源和进程信息 显示系统资源使用情况和进程信息
htop htop 更友好的进程监视器 实时监视系统资源和进程信息
df df -h 显示磁盘空间使用情况(以人类可读的格式) 查看文件系统的磁盘空间使用情况
du du -h /home 显示/home目录的磁盘使用情况(以人类可读的格式) 显示目录的磁盘使用情况
free free -m 显示系统内存使用情况(以MB为单位) 显示系统内存的使用情况
uptime uptime 显示系统运行时间和负载 显示系统的运行时间和负载
history history 查看命令历史记录 查看命令历史记录
网络操作 ifconfig ifconfig 查看网络接口信息 查看和配置网络接口信息
ip ip addr show 显示网络接口的详细信息 查看网络接口信息
ping ping google.com 测试与google.com的网络连通性 测试网络连通性
wget wget http://example.com/file.zip 从网络下载文件 从网络下载文件
curl curl -O http://example.com/file.zip 从网络下载文件 从网络下载文件
ssh ssh user@remote_host 远程登录到remote_host 远程登录到指定主机
scp scp file.txt user@remote_host:/remote/ 复制file.txt到远程主机的/remote/目录 安全地复制文件到远程主机
netstat netstat -tuln 显示网络连接信息 查看网络连接情况
ss ss -tuln 显示网络连接信息 查看网络连接情况
nc nc -vz example.com 80 测试example.com的80端口是否开放 测试主机端口是否可达
文件压缩与解压 tar tar -czvf archive.tar.gz folder/ 压缩folder/目录为archive.tar.gz 压缩文件或目录
tar tar -xzvf archive.tar.gz 解压archive.tar.gz 解压缩文件或目录
zip zip archive.zip file1 file2 file1file2压缩为archive.zip 压缩文件
unzip unzip archive.zip 解压archive.zip 解压ZIP文件
用户管理与权限设置 chmod chmod 755 script.sh 设置script.sh的权限为755 修改文件或目录的权限
chown chown user:group file.txt 更改file.txt的所有者为usergroup 修改文件或目录的所有者
useradd useradd newuser 添加名为newuser的用户账户 添加用户账户
userdel userdel olduser 删除名为olduser的用户账户 删除用户账户
passwd passwd user 更改用户user的密码 更改用户密码
系统管理与配置 date date 显示当前系统日期和时间 显示或设置系统日期和时间
uname uname -a 显示系统信息 显示系统的详细信息
shutdown shutdown -h now 立即关闭系统 关闭系统
reboot reboot 重新启动系统 重启系统
hostname hostname 显示当前主机名 查看或设置主机名
cron crontab -e 编辑用户的定时任务 管理定时任务
磁盘管理 lsblk lsblk 显示块设备信息 查看系统中的块设备信息
fdisk fdisk /dev/sda 打开磁盘分区工具 磁盘分区管理工具
dd dd if=input_file of=output_file bs=4M 复制文件,设置块大小为4MB 用于低级别的复制和转换
安全与防火墙 ssh-keygen ssh-keygen -t rsa 生成RSA类型的SSH密钥对 创建SSH密钥对
iptables iptables -A INPUT -p tcp --dport 80 -j ACCEPT 允许HTTP流量通过80端口 配置防火墙规则
ufw ufw enable 启用Uncomplicated Firewall(UFW) 简化的防火墙管理工具
其他 echo echo "Hello, World!" 输出Hello, World!到标准输出 输出文本到终端
stat stat file.txt 显示file.txt的详细信息 查看文件的状态
nmcli nmcli connection show 显示网络连接信息 管理网络连接

四、vi/vim编辑器

1、一般模式

语法:

语法 功能描述
yy 复制光标当前一行
y 数字 y 复制一段(从第几行到第几行)
p 箭头移动到目的行粘贴
u 撤销上一步
dd 删除光标当前行
d 数字 d 删除光标(含)后多少行
d& 删除当前行光标之后的
x 剪切一个字母(当前光标),相当于 del
X 剪切一个字母(当前光标前一个),相当于 Backspace
shift + x 删掉光标之前的一个字母
yw 复制一个词
dw 删除一个词
r 更改当前光标的一个字母
shift + r 依次替换光标所在行(类似于切换替换模式)
shift+6^ 移动到行头
shift+4$ 移动到行尾
w 移动到下一个词(词头位置)
e 移动到当前词尾
b 移动到上一个词(词头)
1+shift+g 移动到页头,数字
shift+g 移动到页尾
数字 +shift+g 移动到目标行
shift+h/gg 移动到页头

2、编辑模式

按下『i, I, o, O, a, A』等任何一个字母之后进入编辑模式

按下『Esc』这个按键即可退出编辑模式

语法:

按键 功能
i 当前光标前
a 当前光标后
o 当前光标行的下一行
I 光标所在行最前
A 光标所在行最后
O 当前光标行的上一行

3、指令模式

一般模式当中,输入『 : / ?』3个中的任何一个按钮,就可以将光标移动到最底下那一行

语法:

命令 功能
:w 保存
:q 退出
:wq 保存并退出
:! 强制执行
/要查找的词 查找指定的词
n 查找下一个
N 往上查找
:noh 取消高亮显示
:set nu 显示行号
:set nonu 关闭行号
:s/old/new 替换当前行匹配到的第一个old为new
:s/old/new/g 匹配当前行匹配到的所有old为new
:%s/old/new 替换文档中每一行匹配到的第一个old为new
:%s/old/new/g 替换文档中匹配到的所有old为new

五、网络配置

1、配置网络ip地址

(1)查看当前网络ip

①Windows查看当前网络ip

1
C:\Users\dell>ipconfig

②Linux查看当前网络ip

1
[root@yxl100 ~]# ifconfig

(2)ping测试主机之间的连通性

①主机ping虚拟机ip

②虚拟机ping主机ip

③ping测试当前虚拟机是否可以连接网站

1
[root@yxl100 ~]# ping www.baidu.com

(3)修改ip地址

①修改Linux的ip配置文件

1
[root@yxl100 ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33

TYPE=”Ethernet”
PROXY_METHOD=”none”
BROWSER_ONLY=”no”
BOOTPROTO=”static”
DEFROUTE=”yes”
IPV4_FAILURE_FATAL=”no”
IPV6INIT=”yes”
IPV6_AUTOCONF=”yes”
IPV6_DEFROUTE=”yes”
IPV6_FAILURE_FATAL=”no”
IPV6_ADDR_GEN_MODE=”stable-privacy”
NAME=”ens33”
UUID=”0b8beb0a-417a-4e50-a054-5f90500bf4b7”
DEVICE=”ens33”
ONBOOT=”yes”
#IP 地址
IPADDR=192.168.10.100
#网关
GATEWAY=192.168.10.2
#域名解析器
DNS1=192.168.10.2

有下划线的是需要更改或者添加的

②重启网络

1
[root@yxl100 ~]# service network restart

2、配置主机名

(1)Linux配置主机名

1
[root@yxl100 ~]# vi /etc/hostname

(2)windows配置主机名

1
2
进入 C:\Windows\System32\drivers\etc 路径
修改hosts

3、远程登录

(1)windows控制台

1
C:\Users\dell>ssh root@yxl100

(2)远程登录工具

image-20240817185640401

六、系统管理

1、服务管理(systemctl)

(1)常见命令

命令 功能
systemctl start <service> 启动指定的服务
systemctl stop <service> 停止指定的服务
systemctl restart <service> 重启指定的服务
systemctl reload <service> 重新加载服务的配置,不重启
systemctl enable <service> 开机时自动启动服务
systemctl disable <service> 禁用开机自动启动服务
systemctl status <service> 查看服务的当前状态
systemctl is-active <service> 检查服务是否正在运行
systemctl is-enabled <service> 检查服务是否开机自启
systemctl daemon-reload 重新加载 systemd 配置文件
systemctl list-units 列出所有当前已加载的服务单元
systemctl list-timers 列出当前已配置的定时器
systemctl poweroff 关闭系统
systemctl reboot 重启系统

(2)示例(防火墙服务)

①查看防火墙服务的状态

1
[root@yxl100 ~]# systemctl status firewalld

②停止防火墙服务

1
[root@yxl100 ~]# systemctl stop firewalld 

③启动防火墙服务

1
[root@yxl100 ~]# systemctl start firewalld 

④重启防火墙服务

1
[root@yxl100 ~]# systemctl restart firewalld

⑤查看防火墙开机启动状态

1
[root@yxl100 ~]# systemctl enable firewalld.service 

⑥设置开机时关闭防火墙

1
[root@yxl100 ~]# systemctl disable firewalld.service

2、关机重启

命令 功能
shutdown now 立即关闭系统
shutdown +10 计划在 10 分钟后关机
shutdown -r now 立即重启系统
shutdown -r +10 计划在 10 分钟后重启
shutdown -c 取消计划中的关机或重启
reboot 立即重启系统

七、常见的基本命令

1、帮助命令

(1)判断是外部命令还是内嵌命令

1
2
[root@yxl100 ~]# type cd
[root@yxl100 ~]# type ls

(2)外部命令

1
2
[root@yxl100 ~]# man ls
[root@yxl100 ~]# ls --help

(3)内嵌命令

1
2
3
[root@yxl100 ~]# man -f cd
[root@yxl100 ~]# man 3 cd
[root@yxl100 ~]# help cd

(4)常用快捷键

快捷键 功能
Ctrl + C 停止进程
Ctrl + L 清屏,等同于 clear;彻底清屏是 reset
Tab 提示命令(防止敲错)
上下键 查找执行过的命令

2、文档目录类

命令 功能描述 基本语法 选项及功能 案例实操
pwd 显示当前工作目录的绝对路径 pwd - [root@yxl100 ~]# pwd
/root
ls 列出目录的内容 ls [选项] [目录或是文件] -a:显示所有文件,包括隐藏文件
-l:显示详细信息(文件权限、大小、时间等)
[root@yxl100 ~]$ ls -al
cd 切换目录 cd [参数] cd ~:回到家目录
cd ..:回到上一级目录
cd -P:跳转到实际物理路径
[root@yxl100 ~]# cd /root/
mkdir 创建一个新的目录 mkdir [选项] 目录 -p:创建多级目录 [root@yxl100 ~]# mkdir -p xiyou/dssz/meihouwang
rmdir 删除一个空的目录 rmdir 目录 - [root@yxl100 ~]# rmdir xiyou/dssz/meihouwang
touch 创建空文件 touch 文件名称 - [root@yxl100 ~]# touch xiyou/dssz/sunwukong.txt
cp 复制文件或目录 cp [选项] source dest -r:递归复制整个文件夹 [root@yxl100 ~]# cp -r xiyou/dssz/ ./
rm 删除文件或目录 rm [选项] 文件 -r:递归删除目录
-f:强制删除
-v:显示详细过程
[root@yxl100 ~]# rm -rf dssz/
mv 移动文件与目录或重命名 mv oldNameFile newNameFile - [root@yxl100 ~]# mv xiyou/dssz/suwukong.txt xiyou/dssz/houge.txt
cat 查看文件内容 cat [选项] 文件 -n:显示所有行的行号 [root@yxl100 ~]$ cat -n houge.txt
more 分屏查看文件内容 more 文件 空格键:向下翻页
q:退出
[root@yxl100 ~]# more smartd.conf
less 分屏显示文件内容(查看大文档) less 文件 空格键:向下翻页
/:向下搜索
q:退出
[root@yxl100 ~]# less smartd.conf
echo 输出内容到控制台 echo [选项] 内容 -e:支持反斜线控制的字符转换
\n:换行符
\t:制表符
[root@yxl100 ~]$ echo -e “hello\tworld”
head 显示文件头部内容 head 文件 -n:显示指定行数的内容 [root@yxl100 ~]# head -n 2 smartd.conf
tail 输出文件尾部内容 tail 文件 -n:显示指定行数的内容
-f:实时追踪文件的更新(Ctrl+s暂停、Ctrl+q继续、Ctrl+c结束)
[root@yxl100 ~]# tail -f houge.txt
> 和 >> 输出重定向和追加 ls -l > 文件(覆盖写)
echo 内容 >> 文件
- [root@yxl100 ~]# ls -l > houge.txt
[root@yxl100 ~]# echo hello >> houge.txt
ln 创建软链接 ln -s [原文件] [软链接名] - [root@yxl100 ~]# ln -s xiyou/dssz/houge.txt ./houzi
history 查看已经执行过的历史命令 history - [root@yxl100 ~]# history

3、时间日期类

(1)时间日期类命令总结

命令 语法 功能描述 示例 输出
date date 显示当前时间 date 2017 年 06 月 19 日 星期一 20:53:30 CST
date +%Y 显示当前年份 date +%Y 2017
date +%m 显示当前月份 date +%m 06
date +%d 显示当前是哪一天 date +%d 19
date "+%Y-%m-%d %H:%M:%S" 显示年月日时分秒 date "+%Y-%m-%d %H:%M:%S" 2017-06-19 20:54:58
date -d date -d '1 days ago' 显示前一天时间 date -d '1 days ago' 2017 年 06 月 18 日 星期日 21:07:22 CST
date -d '-1 days ago' 显示明天时间 date -d '-1 days ago' 2017 年 06 月 20 日 星期二 21:07:22 CST
date -s date -s "YYYY-MM-DD HH:MM:SS" 设置系统当前时间 date -s "2017-06-19 20:52:18"
cal cal 显示本月日历 cal 显示当前月的日历
cal YEAR 显示某一年的日历 cal 2017 显示 2017 年的日历

(2)选项说明

选项 功能
-d 显示指定的“时间字符串”表示的时间,而非当前时间
-s 设置系统日期时间
+%Y-%m-%d %H:%M:%S 指定显示的日期时间格式

4、用户管理命令

(1)用户管理命令总结

命令 语法 功能描述 示例
useradd useradd 用户名 添加新用户 useradd tangseng
useradd -g 组名 用户名 添加新用户到某个组 useradd -g root tangseng
passwd passwd 用户名 设置用户密码 passwd tangseng
id id 用户名 查看用户是否存在 id tangseng
cat /etc/passwd cat /etc/passwd 查看创建了哪些用户 cat /etc/passwd
su su 用户名 切换用户(不带环境变量) su tangseng
su - 用户名 切换到用户并获得环境变量及执行权限 su - tangseng
userdel userdel 用户名 删除用户但保留用户主目录 userdel tangseng
userdel -r 用户名 删除用户及其主目录 userdel -r zhubajie
who whoami 显示自身用户名 whoami
who am i 显示登录用户的用户名和登录时间 who am i
sudo sudo command 以普通用户执行 root 权限命令 sudo mkdir /opt/module
usermod usermod -g 用户组 用户名 修改用户的初始登录组 usermod -g root zhubajie

(2)赋予普通用户 root 权限

步骤 操作 示例
1 添加普通用户 useradd yxl001
2 设置普通用户密码 passwd yxl001
3 修改 /etc/sudoers 文件 使用 vi 编辑器修改,添加 yxl001ALL=(ALL) ALL
4 允许 sudo 时不输入密码 添加 yxl001ALL=(ALL) NOPASSWD:ALL
5 普通用户执行 root 权限命令 sudo mkdir /opt/module

(3)选项说明

选项 功能
-g 指定用户的初始登录组
-r 删除用户及其相关文件
- 切换用户并加载环境变量
NOPASSWD:ALL 允许用户使用 sudo 命令时不输入密码

5、用户组管理命令

(1)用户组管理命令总结

命令 语法 功能描述 示例
groupadd groupadd 组名 添加新的用户组 groupadd xitianqujing
groupdel groupdel 组名 删除指定的用户组 groupdel xitianqujing
groupmod groupmod -n 新组名 老组名 修改用户组名称 groupmod -n xitian xitianqujing
cat /etc/group cat /etc/group 查看系统中存在的所有用户组 cat /etc/group

(2)选项说明

选项 功能描述
-n 新组名 指定工作组的新名称

6、文件权限类

命令或属性 描述 示例输入
文件类型 - 表示文件,d 表示目录,l 表示链接文件 -rw-r--r--, drwxr-xr-x
属主权限 (User) 第 1-3 位字符,r 可读, w 可写, x 可执行 rwx, r-x, r--
属组权限 (Group) 第 4-6 位字符,r 可读, w 可写, x 可执行 r-x, rw-, r--
其他用户权限 (Other) 第 7-9 位字符,r 可读, w 可写, x 可执行 r--, r-x, ---
chmod [ugoa][+-=][rwx] 文件 通过符号设置文件权限,u 属主, g 属组, o 其他用户, a 所有用户 chmod u+x 文件, chmod g-w 文件
chmod [数字] 文件 通过数字设置文件权限,r=4, w=2, x=1, rwx=7 chmod 755 文件, chmod 644 文件
chmod -R [权限] 目录/ 递归修改目录及其文件的权限 chmod -R 755 目录/
chown [用户] 文件 修改文件的所有者 chown user 文件
chown -R [用户]:[组] 目录/ 递归修改目录及其文件的所有者和所属组 chown -R user:group 目录/
chgrp [组] 文件 修改文件所属组 chgrp group 文件

7、探索查找类

命令 选项 功能 示例命令
find -name 按照指定的文件名查找模式查找文件 find xiyou/ -name "*.txt"
-user 查找属于指定用户名所有文件 find /opt -user atguigu
-size 按照指定的文件大小查找文件,单位为:b(块)、c(字节)、w(字)、k(千字节)、M(兆字节)、G(吉字节) find /home -size +200M
locate 无选项 快速定位文件路径,基于 locate 数据库 locate tmp
updatedb 更新 locate 数据库 updatedb
grep -n 显示匹配行及行号 ls | grep -n test
管道 无选项 将一个命令的输出作为另一个命令的输入 ls | grep “file”
which 无选项 显示命令的完整路径 which python

8、压缩和解压类

(1)命令总结

命令 选项 功能 示例命令
gzip 无选项 压缩文件,只能将文件压缩为 *.gz 文件 gzip houge.txt
gunzip 无选项 解压缩 .gz 文件 gunzip houge.txt.gz
zip -r 压缩文件和目录 zip -r mypackage.zip houge.txt bailongma.txt
unzip -d <目录> 解压缩文件,指定解压后的文件存放目录 unzip mypackage.zip -d /opt
tar -c -v -f -z -x -C 打包目录并压缩,解包,指定压缩后的文件名,显示详细信息,解压到指定目录 tar -zcvf houma.tar.gz houge.txt bailongma.txt
tar -zxvf houma.tar.gz
tar -zxvf xiyou.tar.gz -C /opt

(2)例子说明

  1. gzip 压缩:

    • 压缩文件 houge.txt:
      1
      gzip houge.txt
    • 解压缩文件 houge.txt.gz:
      1
      gunzip houge.txt.gz
  2. zip 压缩:

    • 压缩 houge.txtbailongma.txtmypackage.zip:
      1
      zip mypackage.zip houge.txt bailongma.txt
    • 解压缩 mypackage.zip:
      1
      unzip mypackage.zip
    • 解压缩到指定目录 /opt:
      1
      unzip mypackage.zip -d /opt
  3. tar 打包:

    • 压缩文件 houge.txtbailongma.txthouma.tar.gz:
      1
      tar -zcvf houma.tar.gz houge.txt bailongma.txt
    • 压缩目录 xiyouxiyou.tar.gz:
      1
      tar -zcvf xiyou.tar.gz xiyou/
    • 解压 houma.tar.gz 到当前目录:
      1
      tar -zxvf houma.tar.gz
    • 解压 xiyou.tar.gz 到指定目录 /opt:
      1
      tar -zxvf xiyou.tar.gz -C /opt

9、磁盘查看和分区类

(1)命令总结

命令 选项 功能 示例命令
du -h 以人们较易阅读的格式(GBytes, MBytes, KBytes 等)显示磁盘使用情况 du -sh
-a 查看包括文件在内的所有项的磁盘使用情况 du -ah
-c 显示所有文件和子目录大小后,显示总和 du -ch
-s 只显示总和 du -sh /path/to/dir
--max-depth=n 指定统计子目录的深度为第 n 层 du --max-depth=1
df -h 以人们较易阅读的格式(GBytes, MBytes, KBytes 等)显示磁盘空间使用情况 df -h
lsblk -f 查看详细的设备挂载情况,显示文件系统信息 lsblk -f
mount -t vfstype 指定文件系统的类型,通常不必指定,mount 会自动选择正确的类型 mount -t ext4 /dev/sda1 /mnt
-o options 描述设备或档案的挂接方式 mount -o loop /path/to/image.iso /mnt
umount 无选项 卸载设备 umount /mnt
fdisk -l 显示所有硬盘的分区列表 fdisk -l
硬盘设备名 对新增硬盘进行分区操作 fdisk /dev/sda

(2)例子说明

  1. du 查看磁盘使用情况:

    • 查看当前目录的磁盘空间使用情况(包括子目录):
      1
      du -sh
    • 查看当前目录下的所有文件和子目录大小:
      1
      du -ah
    • 显示当前目录的总和:
      1
      du -sh /path/to/dir
    • 显示深度为 1 的子目录使用情况:
      1
      du --max-depth=1
  2. df 查看磁盘空间使用情况:

    • 查看磁盘使用情况:
      1
      df -h
  3. lsblk 查看设备挂载情况:

    • 查看设备的详细挂载信息:
      1
      lsblk -f
  4. mountumount 挂载/卸载设备:

    • 挂载光盘镜像文件到 /mnt/cdrom
      1
      2
      mkdir /mnt/cdrom
      mount -t iso9660 /dev/cdrom /mnt/cdrom
    • 卸载光盘镜像文件:
      1
      umount /mnt/cdrom
  5. fdisk 分区操作:

    • 查看磁盘分区详情:
      1
      fdisk -l
    • 对硬盘进行分区操作:
      1
      fdisk /dev/sda

10、进程管理类

<!DOCTYPE html>

命令 基本用法 选项 功能
ps ps aux a 列出带有终端的所有用户的进程
x 列出当前用户的所有进程,包括没有终端的
u 用户友好的显示风格
e 列出所有进程
f 显示完整格式的进程列表
kill kill [选项] 进程号 -9 强制终止进程
killall killall 进程名称 通过进程名称终止进程
pstree pstree [选项] -p 显示进程的 PID
-u 显示进程的用户
top top [选项] -d 秒数 设置更新频率,默认 3 秒
-i 不显示闲置或僵尸进程
-p 监控指定的进程 ID
netstat netstat -anp | grep 进程号 -a 显示所有套接字
netstat -nlp | grep 端口号 -n 显示数字格式
-l 仅列出监听状态
-p 显示调用进程

11、系统定时任务

crontab 服务管理和定时任务设置总结

功能 命令/选项 说明
服务管理 systemctl restart crond 重新启动 crond 服务
定时任务设置 crontab [选项] 编辑或管理定时任务
选项说明 -e 编辑 crontab 定时任务
-l 查询当前用户的 crontab 任务
-r 删除当前用户所有的 crontab 任务
基本语法 * * * * * 命令 定义定时任务的执行时间和频率
时间字段 第一个 * 一小时中的分钟(0-59)
第二个 * 一天中的小时(0-23)
第三个 * 一个月中的天数(1-31)
第四个 * 一年的月份(1-12)
第五个 * 一周中的星期几(0-7,0 和 7 代表星期日)
特殊符号 * 代表任何时间
, 代表不连续的时间(例如:0 8,12,16 * * * 每天的 8 点、12 点和 16 点执行)
- 代表时间范围(例如:0 5 * * 1-6 周一到周六的凌晨 5 点执行)
*/n 代表每隔多久执行一次(例如:*/10 * * * * 每隔 10 分钟执行一次)
特定时间执行命令 45 22 * * * 命令 每天 22 点 45 分执行命令
0 17 * * 1 命令 每周一的 17 点 0 分执行命令
0 5 1,15 * * 命令 每月 1 号和 15 号的凌晨 5 点 0 分执行命令
40 4 * * 1-5 命令 每周一到周五的凌晨 4 点 40 分执行命令
*/10 4 * * * 命令 每天凌晨 4 点开始,每隔 10 分钟执行一次命令
0 0 1,15 * 1 命令 每月 1 号和 15 号,每周一的 0 点 0 分执行命令。注意避免同时指定星期几和几号
案例实操 */1 * * * * /bin/echo "11" >> /root/bailongma.txt 每隔 1 分钟向 /root/bailongma.txt 文件中添加一个 11 的数字

八、软件包管理

1、RPM

命令 选项 功能描述 示例命令
rpm -qa 无选项 查询所安装的所有 RPM 软件包 rpm -qa
| grep 软件包 过滤查询指定的软件包 rpm -qa | grep firefox
rpm -e -e 卸载指定的 RPM 软件包 rpm -e firefox
--nodeps 卸载时不检查依赖,强制卸载 rpm -e --nodeps firefox
rpm -ivh -i 安装指定的 RPM 软件包 rpm -ivh firefox-45.0.1-1.el6.centos.x86_64.rpm
-v 显示安装过程的详细信息 rpm -ivh -v firefox-45.0.1-1.el6.centos.x86_64.rpm
-h 显示安装进度条 rpm -ivh -h firefox-45.0.1-1.el6.centos.x86_64.rpm
--nodeps 安装时不检查依赖,强制安装 rpm -ivh --nodeps firefox-45.0.1-1.el6.centos.x86_64.rpm
功能 命令 选项/参数 功能描述 示例命令
RPM 概述 rpm RPM(RedHat Package Manager),基于 RPM 包的管理工具 rpm
查询已安装的软件包 rpm -qa 查询系统中安装的所有 RPM 软件包 rpm -qa
查询特定软件包 rpm -qa | grep 查询特定的 RPM 软件包 rpm -qa | grep firefox
卸载软件包 rpm -e 卸载指定的 RPM 软件包 rpm -e firefox
强制卸载软件包 rpm -e --nodeps 卸载软件包时忽略依赖 rpm -e --nodeps firefox
安装软件包 rpm -ivh -i -v -h 安装 RPM 包,显示详细信息与进度条 rpm -ivh firefox-45.0.1-1.el6.centos.x86_64.rpm
忽略依赖安装软件包 rpm -ivh --nodeps 安装软件包时忽略依赖 rpm -ivh --nodeps firefox-45.0.1-1.el6.centos.x86_64.rpm
查询软件包详细信息 rpm -qi 查询安装的 RPM 软件包的详细信息 rpm -qi firefox
检查软件包文件的完整性 rpm -V 检查指定软件包的文件是否被修改 rpm -V firefox
显示软件包文件列表 rpm -ql 列出指定 RPM 软件包安装的所有文件 rpm -ql firefox
查询文件属于哪个软件包 rpm -qf 查询系统中文件属于哪个 RPM 软件包 rpm -qf /usr/bin/firefox

2、YUM

命令 选项/参数 功能描述 示例命令
yum install -y 安装指定的 RPM 软件包,并对所有提问都回答“yes” yum -y install firefox
yum update -y 更新系统中所有可用的软件包,并对所有提问都回答“yes” yum -y update
yum check-update 检查是否有可用的更新 yum check-update
yum remove -y 删除指定的 RPM 软件包 yum -y remove firefox
yum list 显示系统中已安装和可用的软件包信息 yum list | grep firefox
yum clean all 清理 YUM 缓存,包括软件包和头文件的缓存 yum clean all
yum makecache 生成缓存,将服务器上的软件包信息缓存到本地 yum makecache
yum deplist 显示指定软件包的所有依赖关系 yum deplist firefox
功能 命令 选项/参数 功能描述 示例命令
YUM 概述 yum YUM(全称为 Yellow dog Updater, Modified),基于 RPM 包管理工具 yum
安装软件包 yum -y install 安装 RPM 软件包,并回答所有问题为 “yes” yum -y install firefox
更新软件包 yum update 更新 RPM 软件包 yum update
检查更新 yum check-update 检查是否有可用的更新 RPM 软件包 yum check-update
删除软件包 yum remove 删除指定的 RPM 软件包 yum remove firefox
显示软件包信息 yum list 列出安装或可用的软件包信息 yum list | grep firefox
清理缓存 yum clean all 清理 YUM 过期的缓存 yum clean all
缓存服务器包信息 yum makecache 缓存服务器的包信息到本地 yum makecache
显示依赖关系 yum deplist 显示软件包的所有依赖关系 yum deplist firefox
修改 YUM 源 wget 下载命令 下载国内镜像仓库的 repos 文件,如网易或阿里云 wget http://mirrors.aliyun.com/repo/Centos-7.repo
替换默认的 YUM 源文件 mv 用下载的 repos 文件替换默认的 CentOS-Base.repo mv CentOS7-Base-163.repo CentOS-Base.repo
备份默认的 repos 文件 cp 备份默认的 YUM repos 文件 cp CentOS-Base.repo CentOS-Base.repo.backup