内容
隐藏
1文件与目录操作 30 条
| 命令 | 说明 |
|---|---|
ls -l | 长格式列出文件与权限 |
ls -a | 显示隐藏文件(含 . 与 ..) |
ls -lh | 人类可读方式显示文件大小 |
ls -R | 递归列出子目录内容 |
pwd | 显示当前工作目录绝对路径 |
cd /path | 切换到指定目录 |
cd .. | 返回上一级目录 |
cd ~ | 切换到当前用户家目录 |
cd - | 切换回上一次所在目录 |
mkdir dir | 创建单个目录 |
mkdir -p a/b/c | 递归创建多级目录 |
rmdir dir | 删除空目录 |
rm file | 删除文件 |
rm -r dir | 递归删除目录及其内容 |
rm -f file | 强制删除,忽略不存在与提示 |
rm -rf dir | 强制递归删除(高危,慎用) |
cp a b | 复制文件 |
cp -r s d | 递归复制目录 |
cp -p a b | 复制时保留原文件属性 |
cp -a s d | 归档复制,保留全部属性与链接 |
mv a b | 移动文件或重命名 |
touch file | 创建空文件或更新访问/修改时间 |
cat file | 连接并打印文件内容 |
tac file | 逆序(从末行到首行)显示文件 |
head -n 10 file | 显示文件前 10 行 |
tail -n 10 file | 显示文件后 10 行 |
tail -f file | 实时跟踪文件新增内容 |
wc -l file | 统计文件行数 |
ln -s src link | 创建指向源文件的软链接 |
find / -name file | 从根目录递归按名称查找文件 |
2文本查看与搜索 30 条
| 命令 | 说明 |
|---|---|
cat -n file | 显示内容并带行号 |
less file | 分页查看,支持上下滚动与搜索 |
more file | 分页查看(仅向前) |
nl file | 显示内容并加行号 |
head file | 默认显示前 10 行 |
tail file | 默认显示后 10 行 |
tail -f file | 持续监控日志尾部 |
grep "pat" file | 在文件中搜索匹配字符串 |
grep -i "pat" file | 忽略大小写搜索 |
grep -r "pat" dir | 递归搜索目录下所有文件 |
grep -v "pat" file | 反向匹配,输出不含模式的行 |
grep -n "pat" file | 输出匹配行及其行号 |
grep -E "p1|p2" file | 扩展正则,匹配多个模式 |
grep -c "pat" file | 统计匹配行数 |
grep -l "pat" * | 仅列出包含匹配的文件名 |
egrep "p1|p2" file | 等价于 grep -E |
fgrep "str" file | 按固定字符串搜索(非正则) |
cut -d: -f1 file | 以 : 为分隔符取第一列 |
cut -c1-10 file | 截取每行第 1-10 个字符 |
sort file | 按字典序排序输出 |
sort -r file | 逆序排序 |
sort -n file | 按数值大小排序 |
sort -u file | 排序并去重 |
uniq file | 去除相邻重复行(需先排序) |
uniq -c file | 统计每行重复次数 |
diff a b | 逐行比较两个文件差异 |
comm a b | 按列比较已排序的两个文件 |
rev file | 反转每行字符顺序 |
paste a b | 将两文件对应行合并为一行 |
column -t file | 按空白对齐为表格形式 |
3文本处理(sed/awk/tr) 30 条
| 命令 | 说明 |
|---|---|
sed 's/old/new/' f | 替换每行首个 old 为 new |
sed 's/old/new/g' f | 全局替换所有匹配 |
sed -i 's/a/b/g' f | 就地修改文件内容 |
sed -n '1,5p' f | 仅打印第 1 至 5 行 |
sed '2d' f | 删除第 2 行 |
sed '/pat/d' f | 删除包含模式的行 |
sed '1d' f | 删除首行 |
sed 'G' f | 在每行后插入空行 |
sed '=' f | 为每行添加行号 |
sed '/pat/a text' f | 在匹配行后追加文本 |
sed '/pat/i text' f | 在匹配行前插入文本 |
awk '{print $1}' f | 打印每行的第一列 |
awk -F: '{print $1}' f | 以 : 为分隔符取第一列 |
awk '{print NF}' f | 打印每行列数 |
awk 'NR==5' f | 仅打印第 5 行 |
awk '$1>10' f | 打印第一列大于 10 的行 |
awk '{sum+=$1} END{print sum}' f | 累加第一列并输出总和 |
awk '/pat/{print}' f | 打印匹配模式的行 |
awk 'length($0)>80' f | 打印长度超过 80 字符的行 |
awk '{print $0, NR}' f | 打印整行及行号 |
awk -v x=5 'BEGIN{print x}' | 使用变量 x 并输出 |
tr 'a-z' 'A-Z' | 将小写转换为大写 |
tr -d 'chr' | 删除指定的字符 |
tr -s ' ' | 压缩连续空格为单个 |
tr ' ' '\n' | 将空格替换为换行 |
wc -w file | 统计文件单词数 |
wc -c file | 统计文件字节数 |
fold -w 80 file | 每 80 列折行 |
awk 'END{print NR}' f | 统计文件总行数 |
sed 's/^[ \t]*//' f | 去除行首空白 |
4用户与组管理 30 条
| 命令 | 说明 |
|---|---|
whoami | 显示当前登录用户名 |
id | 显示当前用户的 UID/GID 与所属组 |
id user | 显示指定用户的 ID 信息 |
who | 显示当前登录系统的用户 |
w | 显示登录用户及其正在执行的进程 |
users | 列出当前登录的用户名 |
last | 显示近期登录历史 |
lastlog | 显示所有用户最近一次登录时间 |
useradd user | 创建新用户(不建家目录) |
useradd -m user | 创建用户并生成家目录 |
useradd -G grp user | 创建用户并加入附加组 |
useradd -s /sbin/nologin u | 创建禁止登录的账户 |
usermod -aG grp user | 将用户追加到附加组 |
usermod -l new old | 修改用户名 |
usermod -s /bin/bash u | 修改用户登录 shell |
usermod -L user | 锁定用户账户 |
usermod -U user | 解锁用户账户 |
userdel user | 删除用户账户 |
userdel -r user | 删除用户并清理家目录 |
passwd user | 为用户设置或修改密码 |
passwd -l user | 锁定用户密码 |
passwd -u user | 解锁用户密码 |
passwd -e user | 强制用户下次登录改密码 |
groupadd grp | 创建新用户组 |
groupadd -g 1001 grp | 指定 GID 创建组 |
groupmod -n ng og | 修改组名 |
groupdel grp | 删除用户组 |
gpasswd -a u g | 将用户加入组 |
gpasswd -d u g | 将用户移出组 |
chage -l user | 查看用户密码老化策略 |
5权限与所有权 30 条
| 命令 | 说明 |
|---|---|
chmod 755 f | 以数字方式设置 rwxr-xr-x 权限 |
chmod u+x f | 为属主添加执行权限 |
chmod g-w f | 移除属组的写权限 |
chmod o=r f | 将其他用户的权限设为只读 |
chmod -R 644 dir | 递归设置目录内权限 |
chmod +x script | 为脚本添加可执行权限 |
chown u f | 修改文件属主 |
chown u:g f | 同时修改属主与属组 |
chown -R u:g dir | 递归修改属主与属组 |
chgrp grp f | 修改文件属组 |
chgrp -R grp dir | 递归修改属组 |
umask | 查看当前权限掩码 |
umask 022 | 设置新建文件默认掩码 |
ls -l | 查看文件权限与属主属组 |
ls -ld dir | 查看目录自身权限 |
ls -la | 详细列出含隐藏文件 |
stat f | 查看文件详细状态与权限位 |
getfacl f | 查看文件的 ACL 规则 |
setfacl -m u:u:rwx f | 为用户设置 ACL 读写执行 |
setfacl -x u:u f | 删除指定用户的 ACL 规则 |
setfacl -R -m g:g:r f | 递归为组设置只读 ACL |
setfacl -b f | 清除文件全部 ACL 规则 |
chattr +i f | 设置文件不可变(不可删改) |
chattr -i f | 解除文件不可变属性 |
chattr +a f | 设置文件仅可追加内容 |
lsattr f | 查看文件特殊属性 |
sudo cmd | 以 root 权限执行单条命令 |
sudo -i | 切换到 root 交互 shell |
sudo -u user cmd | 以指定用户身份执行命令 |
su - user | 切换并加载目标用户环境 |
6软件包管理(APT/Debian) 30 条
| 命令 | 说明 |
|---|---|
apt update | 刷新软件源索引 |
apt upgrade | 升级所有可升级的包 |
apt full-upgrade | 智能处理依赖的完全升级 |
apt install pkg | 安装指定软件包 |
apt install -y pkg | 自动确认安装 |
apt remove pkg | 卸载软件包(保留配置) |
apt purge pkg | 卸载并清除配置文件 |
apt autoremove | 清理不再需要的依赖 |
apt search kw | 按关键字搜索包 |
apt show pkg | 显示包详细信息 |
apt list --installed | 列出已安装包 |
apt list --upgradable | 列出可升级的包 |
apt-cache policy pkg | 查看包版本与安装策略 |
apt-cache depends pkg | 查看包依赖关系 |
apt-get install pkg | 安装包(底层命令) |
apt-get download pkg | 仅下载 deb 包不安装 |
dpkg -i pkg.deb | 用 dpkg 安装本地 deb 包 |
dpkg -r pkg | 卸载 deb 包 |
dpkg -l | 列出所有已安装 deb 包 |
dpkg -L pkg | 列出包安装的文件 |
dpkg -S file | 查询文件属于哪个包 |
dpkg --configure -a | 修复中断的配置过程 |
apt-mark hold pkg | 锁定包版本禁止升级 |
apt-mark unhold pkg | 解除包版本锁定 |
apt-cache rdepends pkg | 查看反向依赖 |
apt edit-sources | 编辑软件源配置 |
apt-get clean | 清理下载缓存 |
apt-get autoclean | 清理过期缓存包 |
apt-file search f | 查找包含某文件的包 |
add-apt-repository ppa:x | 添加 PPA 软件源 |
7软件包管理(YUM/DNF/RPM) 30 条
| 命令 | 说明 |
|---|---|
dnf update | 更新所有可升级包 |
dnf upgrade | 升级包(同 update) |
dnf install pkg | 安装软件包 |
dnf install -y pkg | 自动确认安装 |
dnf remove pkg | 卸载软件包 |
dnf autoremove | 清理无用依赖 |
dnf search kw | 按关键字搜索包 |
dnf info pkg | 显示包详细信息 |
dnf list installed | 列出已安装包 |
dnf list available | 列出可安装包 |
dnf provides file | 查询文件由哪个包提供 |
dnf groups list | 列出可用包组 |
dnf groupinstall "grp" | 安装整组软件包 |
dnf repoquery --list pkg | 列出包内含文件 |
dnf history | 查看事务历史 |
dnf history undo id | 撤销指定事务 |
dnf clean all | 清理全部缓存 |
yum update | 兼容模式更新(旧命令) |
rpm -ivh pkg.rpm | 安装本地 rpm 包并显示进度 |
rpm -e pkg | 卸载 rpm 包 |
rpm -qa | 列出全部已安装 rpm 包 |
rpm -ql pkg | 列出包内文件 |
rpm -qf file | 查询文件所属 rpm 包 |
rpm -qi pkg | 显示包信息 |
rpm -Uvh pkg.rpm | 升级 rpm 包 |
rpm -V pkg | 校验包文件是否被篡改 |
rpm --import key | 导入 GPG 公钥 |
dnf config-manager --add-repo url | 添加软件仓库 |
dnf module list | 列出可用模块流 |
dnf downgrade pkg | 降级到旧版本 |
8systemd 服务管理 30 条
| 命令 | 说明 |
|---|---|
systemctl start svc | 启动指定服务 |
systemctl stop svc | 停止指定服务 |
systemctl restart svc | 重启服务 |
systemctl reload svc | 重载服务配置(不中断) |
systemctl status svc | 查看服务运行状态 |
systemctl enable svc | 设置开机自启动 |
systemctl disable svc | 取消开机自启动 |
systemctl is-enabled svc | 查看是否开机自启 |
systemctl is-active svc | 查看服务是否正在运行 |
systemctl list-units | 列出当前活跃单元 |
systemctl list-unit-files | 列出所有单元文件状态 |
systemctl daemon-reload | 重新加载 unit 配置 |
systemctl mask svc | 彻底屏蔽服务(无法启动) |
systemctl unmask svc | 取消屏蔽服务 |
systemctl cat svc | 查看服务 unit 文件内容 |
systemctl show svc | 显示服务全部属性 |
systemctl edit svc | 生成覆盖配置片段 |
journalctl -u svc | 查看服务日志 |
journalctl -u svc -f | 实时跟踪服务日志 |
systemctl --failed | 列出启动失败的服务 |
systemctl get-default | 查看默认启动目标 |
systemctl set-default multi-user | 设为多用户命令行目标 |
systemctl isolate rescue | 切换到救援模式 |
systemctl poweroff | 关机 |
systemctl reboot | 重启系统 |
systemctl suspend | 挂起(睡眠) |
systemctl hibernate | 休眠(写盘) |
hostnamectl | 查看/设置主机名与系统信息 |
timedatectl | 查看与设置系统时间 |
localectl | 查看与设置区域与键盘 |
9进程管理 30 条
| 命令 | 说明 |
|---|---|
ps | 显示当前终端的进程 |
ps aux | 显示全部用户的所有进程 |
ps -ef | 全格式显示进程及父 PID |
ps -u user | 显示指定用户的进程 |
ps -p pid | 查看指定 PID 的进程 |
top | 实时动态监控进程与资源 |
htop | 增强版交互式进程监控 |
pstree | 以树状结构显示进程关系 |
pgrep name | 按名称查找进程 PID |
pidof name | 查找进程 PID |
kill pid | 向进程发送终止信号 |
kill -9 pid | 强制杀死进程(SIGKILL) |
kill -l | 列出所有信号名称 |
killall name | 按进程名终止全部匹配 |
pkill -u user | 终止指定用户的所有进程 |
nice -n 10 cmd | 以较低优先级运行命令 |
renice 10 pid | 修改运行中进程的优先级 |
nohup cmd & | 脱离终端在后台运行 |
cmd & | 将命令放入后台执行 |
jobs | 查看当前 shell 的后台作业 |
bg | 将作业切换到后台继续运行 |
fg | 将后台作业切换到前台 |
disown | 使作业脱离 shell 不受挂断影响 |
watch -n1 cmd | 每 1 秒重复执行命令 |
lsof -p pid | 查看进程打开的文件 |
lsof -i :80 | 查看占用 80 端口的进程 |
strace -p pid | 追踪进程的系统调用 |
fuser -k 80/tcp | 杀掉占用 80 端口的进程 |
timeout 10 cmd | 限制命令最多运行 10 秒 |
ps aux --sort=-%mem | head | 按内存占用降序列出 Top 进程 |
10磁盘与分区 30 条
| 命令 | 说明 |
|---|---|
lsblk | 以树状列出块设备与挂载点 |
fdisk -l | 列出所有磁盘分区表 |
fdisk /dev/sda | 交互式分区(MBR) |
parted /dev/sda | 交互式分区(支持 GPT) |
parted -l | 列出分区信息 |
mkfs.ext4 /dev/sdX | 格式化为 ext4 文件系统 |
mkfs.xfs /dev/sdX | 格式化为 xfs 文件系统 |
mkswap /dev/sdX | 创建 swap 交换分区 |
swapon /dev/sdX | 启用 swap 分区 |
swapoff /dev/sdX | 关闭 swap 分区 |
swapon -s | 显示 swap 使用状态 |
df -h | 以可读方式显示磁盘使用率 |
df -i | 显示 inode 使用情况 |
du -sh dir | 统计目录总大小 |
du -h --max-depth=1 | 统计一级子目录大小 |
mount /dev/sdX /mnt | 挂载设备到目录 |
umount /mnt | 卸载已挂载的文件系统 |
mount -a | 挂载 /etc/fstab 中全部项 |
blkid | 显示设备 UUID 与文件系统类型 |
fsck /dev/sdX | 检查并修复文件系统 |
e2fsck -f /dev/sdX | 强制检查 ext 文件系统 |
tune2fs -l /dev/sdX | 查看 ext 文件系统参数 |
dumpe2fs /dev/sdX | 导出 ext 文件系统详细信息 |
resize2fs /dev/sdX | 调整 ext 文件系统大小 |
xfs_growfs /mnt | 在线扩展 xfs 文件系统 |
wipefs /dev/sdX | 擦除设备上的文件系统签名 |
hdparm -I /dev/sda | 查看硬盘参数信息 |
smartctl -a /dev/sda | 读取硬盘 SMART 健康状态 |
dd if=/dev/zero of=f bs=1M count=100 | 生成指定大小的零填充文件 |
partprobe | 通知内核重新读取分区表 |
11网络配置 30 条
| 命令 | 说明 |
|---|---|
ip addr | 显示所有网络接口的 IP 地址 |
ip link | 显示网络接口链路状态 |
ip link set eth0 up | 启用网络接口 |
ip link set eth0 down | 禁用网络接口 |
ip addr add 10.0.0.10/24 dev eth0 | 为接口添加 IP 地址 |
ip addr del 10.0.0.10/24 dev eth0 | 移除接口 IP 地址 |
ip route | 显示内核路由表 |
ip route add default via 10.0.0.1 | 添加默认网关 |
ip route add 172.16.0.0/12 via 10.0.0.1 | 添加静态路由 |
ip route del 172.16.0.0/12 | 删除静态路由 |
ip neigh | 显示 ARP 邻居表 |
nmcli device | 列出网络设备及状态 |
nmcli con show | 显示所有网络连接 |
nmcli con up id | 启用指定连接 |
nmcli con down id | 停用指定连接 |
nmcli con add type ethernet ifname eth0 | 新增以太网连接 |
nmcli con mod eth0 ipv4.addresses 10.0.0.10/24 | 修改连接 IP |
hostnamectl set-hostname h | 设置系统主机名 |
cat /etc/hosts | 查看本地主机名解析 |
cat /etc/resolv.conf | 查看 DNS 服务器配置 |
resolvectl status | 显示系统解析状态 |
nmcli dev wifi | 扫描可用 WiFi 列表 |
nmcli dev wifi connect ssid password p | 连接指定 WiFi |
ethtool eth0 | 查看网卡速率与协商状态 |
ethtool -i eth0 | 查看网卡驱动信息 |
ip -s link | 显示接口流量统计 |
ip netns list | 列出网络命名空间 |
ip netns add ns1 | 创建网络命名空间 |
ip netns exec ns1 cmd | 在指定命名空间内执行命令 |
ip -br addr | 简洁显示各接口地址与状态 |
12网络诊断 30 条
| 命令 | 说明 |
|---|---|
ping host | 测试到目标主机的连通性 |
ping -c 4 host | 发送 4 个 ICMP 包后停止 |
ping6 host | 对 IPv6 地址执行连通测试 |
traceroute host | 追踪到目标的路由路径 |
tracepath host | 显示到目标的路径与 MTU |
mtr host | 实时综合 ping+traceroute 监控 |
ss -tulnp | 查看监听端口与对应进程 |
ss -tnp | 查看已建立的 TCP 连接 |
ss -l | 仅显示监听中的套接字 |
netstat -tulnp | 查看监听端口(传统命令) |
netstat -an | 显示所有连接与端口 |
tcpdump -i eth0 | 抓取接口上的网络数据包 |
tcpdump -i eth0 port 80 | 只抓 80 端口流量 |
tcpdump -w cap.pcap | 抓包并保存到文件 |
tcpdump -r cap.pcap | 读取 pcap 抓包文件 |
dig example.com | DNS 详细解析查询 |
dig +short example.com | 仅返回解析结果 |
dig -x 8.8.8.8 | 反向 DNS 解析 |
nslookup example.com | 查询域名解析 |
host example.com | 简洁的 DNS 查询 |
curl -I url | 仅获取 HTTP 响应头 |
curl -v url | 显示详细请求/响应过程 |
curl -O url | 下载文件并保留原名 |
wget url | 下载文件 |
arp -n | 显示 ARP 缓存表 |
ip neigh show | 显示邻居(ARP)表 |
telnet host 80 | 测试目标主机端口连通性 |
nc -zv host 80 | 使用 ncat 探测端口 |
nmap host | 扫描主机开放端口 |
ss -s | 显示套接字连接统计摘要 |
13远程连接与文件传输 30 条
| 命令 | 说明 |
|---|---|
ssh user@host | 通过 SSH 登录远程主机 |
ssh -p 2222 user@host | 指定端口登录 |
ssh -i key user@host | 使用私钥登录 |
ssh -X user@host | 启用 X11 图形转发 |
ssh -L 8080:localhost:80 user@host | 建立本地端口转发 |
ssh -R 8080:localhost:80 user@host | 建立远程端口转发 |
ssh -D 1080 user@host | 建立动态 SOCKS 代理 |
ssh -o StrictHostKeyChecking=no host | 跳过主机密钥确认 |
scp file user@host:/path | 上传文件到远程 |
scp user@host:/path file | 从远程下载文件 |
scp -r dir user@host:/p | 递归复制目录 |
scp -P 2222 file user@host:/p | 指定端口传输 |
scp -i key file user@host:/p | 用密钥安全传输 |
rsync -avz src/ user@host:/dst | 增量同步目录 |
rsync -avz --delete src/ dst | 镜像同步并删除多余文件 |
rsync -e ssh src user@host:/dst | 通过 SSH 同步 |
rsync -avz --exclude='*.log' s d | 同步时排除日志 |
sftp user@host | 进入交互式 SFTP 传输 |
sshfs user@host:/p /mnt | 将远程目录挂载到本地 |
fusermount -u /mnt | 卸载 sshfs 挂载 |
ssh-copy-id user@host | 上传公钥实现免密登录 |
ssh-keygen | 生成 SSH 密钥对 |
ssh-keygen -t ed25519 | 生成 ed25519 类型密钥 |
ssh-add | 将密钥加入 ssh-agent |
ssh-agent bash | 启动 ssh-agent 代理 |
ssh -tt user@host cmd | 分配伪终端远程执行命令 |
scp -C file user@host:/p | 传输时启用压缩 |
rsync -avz --partial src dst | 支持断点续传 |
ssh user@host 'cmd' | 在远程直接执行单条命令 |
rsync -avz -e "ssh -p 2222" s h:/d | 指定 SSH 端口同步目录 |
14防火墙(firewalld/iptables/nft) 30 条
| 命令 | 说明 |
|---|---|
systemctl start firewalld | 启动 firewalld 服务 |
firewall-cmd --state | 查看防火墙运行状态 |
firewall-cmd --list-all | 显示当前区域全部规则 |
firewall-cmd --get-zones | 列出所有可用区域 |
firewall-cmd --get-active-zones | 显示激活的区域 |
firewall-cmd --zone=public --add-port=80/tcp | 临时开放 80 端口 |
firewall-cmd --zone=public --add-service=http | 按服务名开放 |
firewall-cmd --permanent --add-port=80/tcp | 永久开放 80 端口 |
firewall-cmd --reload | 重载防火墙使规则生效 |
firewall-cmd --remove-port=80/tcp | 移除已开放端口 |
firewall-cmd --add-rich-rule='rule' | 添加富规则 |
firewall-cmd --query-port=80/tcp | 查询端口是否放行 |
iptables -L -n | 列出当前 iptables 规则 |
iptables -A INPUT -p tcp --dport 22 -j ACCEPT | 允许 SSH 入站 |
iptables -A INPUT -j DROP | 拒绝其余入站流量 |
iptables -F | 清空所有规则 |
iptables -P INPUT DROP | 设置默认入站策略为丢弃 |
iptables -t nat -L | 查看 NAT 表规则 |
iptables -t nat -A POSTROUTING -j MASQUERADE | 配置 SNAT 伪装 |
iptables-save > rules.v4 | 保存规则到文件 |
iptables-restore < rules.v4 | 从文件恢复规则 |
nft list ruleset | 列出 nftables 全部规则 |
nft add table inet filter | 创建 nftables 表 |
nft add chain inet filter input | 创建 input 链 |
nft add rule inet filter input tcp dport 22 accept | 放行 SSH |
nft delete table inet filter | 删除整张表 |
ufw enable | 启用 Ubuntu 简易防火墙 |
ufw allow 22 | 允许 22 端口 |
ufw status | 查看 ufw 规则状态 |
ufw deny 80 | 拒绝 80 端口 |
15日志管理 30 条
| 命令 | 说明 |
|---|---|
journalctl | 查看 systemd 全部日志 |
journalctl -b | 仅显示本次启动以来的日志 |
journalctl -p err | 只显示错误级别日志 |
journalctl -u svc | 查看指定服务日志 |
journalctl -u svc -f | 实时跟踪服务日志 |
journalctl --since "2026-08-02" | 查看指定日期后的日志 |
journalctl -n 100 | 显示最近 100 行 |
journalctl -f | 实时滚动显示新日志 |
journalctl -k | 仅显示内核日志 |
journalctl _PID=1234 | 按进程 PID 过滤 |
journalctl --disk-usage | 查看日志磁盘占用 |
journalctl --vacuum-size=500M | 清理日志至 500M 以内 |
cat /var/log/messages | 查看系统消息日志(RHEL) |
cat /var/log/syslog | 查看系统日志(Debian) |
cat /var/log/dmesg | 查看内核启动信息 |
dmesg | 打印内核环形缓冲区消息 |
dmesg -T | 以可读时间显示内核消息 |
dmesg -w | 持续监控内核消息 |
less /var/log/auth.log | 查看认证日志 |
tail -f /var/log/nginx/access.log | 实时跟踪访问日志 |
logrotate --force /etc/logrotate.conf | 强制触发日志轮转 |
cat /etc/rsyslog.conf | 查看 rsyslog 主配置 |
logger "test message" | 向 syslog 写入测试消息 |
journalctl --verify | 校验日志文件完整性 |
journalctl -o json | 以 JSON 格式输出日志 |
cat /var/log/secure | 查看安全认证日志(RHEL) |
ausearch -m avc | 查询 SELinux 拒绝审计 |
aureport | 生成审计摘要报告 |
less /var/log/kern.log | 查看内核日志(Debian) |
journalctl --since "1 hour ago" | 查看最近一小时的日志 |
16定时任务 30 条
| 命令 | 说明 |
|---|---|
crontab -e | 编辑当前用户的定时任务 |
crontab -l | 列出当前用户的定时任务 |
crontab -r | 删除当前用户所有任务 |
crontab -u user -l | 查看指定用户的任务 |
systemctl start cron | 启动 cron 服务(Debian) |
systemctl start crond | 启动 crond(RHEL) |
cat /etc/crontab | 查看系统级 crontab |
ls /etc/cron.d/ | 查看目录级 cron 任务 |
ls /etc/cron.daily/ | 查看每日任务脚本 |
ls /etc/cron.hourly/ | 查看每小时任务 |
run-parts /etc/cron.daily | 手动执行每日任务 |
cat /etc/anacrontab | 查看 anacron 配置 |
* * * * * cmd | 每分钟执行一次 |
0 * * * * cmd | 每小时整点执行 |
0 0 * * * cmd | 每天 0 点执行 |
0 0 * * 0 cmd | 每周日 0 点执行 |
0 0 1 * * cmd | 每月 1 号 0 点执行 |
*/5 * * * * cmd | 每 5 分钟执行一次 |
0 9-18 * * 1-5 cmd | 工作日上午 9 至 18 点 |
systemctl list-timers | 列出 systemd 定时器 |
systemctl start foo.timer | 启动指定定时器 |
systemctl enable foo.timer | 设置定时器开机启用 |
at now + 1 hour | 安排一小时后执行任务 |
atq | 查看待执行的 at 任务队列 |
atrm id | 删除指定 at 任务 |
sleep 60 && cmd | 延时 60 秒后执行 |
watch -n 300 cmd | 每 5 分钟执行命令 |
anacron | 按天错峰执行错过周期的任务 |
cat /var/log/cron | 查看 cron 执行日志 |
systemctl status cron | 查看 cron 服务状态 |
Linux 系统基础命令速查表
