Linux命令大全

173 个常用命令 · 12 类分组 · 描述与示例 · 点击复制即用

返回 ico5.net 在线工具箱 您还可以使用 MySQL命令大全 ADB命令大全 PHP函数大全 Eclipse快捷键大全

Linux命令大全

共 12 张表 · 173 行 · 浏览器本地运行

一、文件与目录 - 创建、查看、移动、复制与删除文件/目录

命令 / 语法 描述 示例 (Example)
ls 列出目录内容 ls -lah /var/www
ls -l 长格式列出(含权限、大小、时间) ls -lh
cd 切换当前工作目录 cd /var/www 或 cd ..
pwd 显示当前所在绝对路径 输出:/home/deploy
mkdir 创建目录,-p 可递归创建父目录 mkdir -p /data/logs/2026
rmdir 删除空目录 rmdir old_dir
touch 创建空文件或更新文件时间戳 touch app.log
cp 复制文件或目录,-r 递归 cp -r src/ dst/
mv 移动或重命名文件/目录 mv a.txt b.txt
高危:会删除/覆盖数据或破坏系统,执行前务必确认 删除文件/目录,-rf 强制递归(高危) rm -rf ./tmp
ln -s 创建软链接(符号链接) ln -s /opt/app/app /usr/local/bin/app
find 按名称/时间/大小递归查找文件 find /var -name "*.log" -mtime +7
locate 基于索引数据库快速查找(需先 updatedb) locate nginx.conf
tree 以树形结构展示目录 tree -L 2 /project
file 识别文件真实类型 file mystery.bin
stat 显示文件详细元数据(大小/权限/时间戳/inode) stat app.log

二、文本查看与处理 - 查看、过滤、截取、排序与统计文本

命令 / 语法 描述 示例 (Example)
cat 查看文件全部内容 / 拼接多个文件 cat -n app.log
tac 逆序(从尾到头)输出文件 tac app.log
more 分屏查看文件,只能向下翻 more big.log
less 分屏查看,可上下翻页并搜索 less -N big.log
head 查看文件开头 N 行 head -n 20 access.log
tail 查看文件末尾 N 行 tail -n 50 error.log
tail -f 实时追踪文件新增内容 tail -f /var/log/nginx/access.log
nl 带行号输出文件 nl config.conf
grep 按模式搜索文本,-R 递归 -i 忽略大小写 -n 行号 grep -Rni "error" /var/log
egrep 扩展正则搜索(已废弃,建议改用 grep -E) egrep "warn|error" app.log
sed 流编辑器,常用于替换文本 sed -i 's/old/new/g' file.txt
awk 按列处理文本、做统计报表 awk '{sum+=$1} END{print sum}' data.txt
cut 按分隔符截取指定列/字符 cut -d: -f1 /etc/passwd
sort 对文本排序,-n 数值 -r 逆序 sort -nr scores.txt
uniq 去除相邻重复行,常配合 sort sort log.txt | uniq -c
wc 统计行数/词数/字节数 wc -l access.log
diff 逐行比较两个文件的差异 diff -u a.txt b.txt
tr 字符替换、删除或压缩(常配合管道) echo "hello" | tr "a-z" "A-Z"

三、权限与所有权 - 文件权限、属主属组与特殊属性

命令 / 语法 描述 示例 (Example)
注意:可能改变系统状态或中断服务,请谨慎 修改文件权限,数字或符号方式 chmod 755 deploy.sh
chmod u+x 仅给属主增加执行权限 chmod u+x run.sh
高危:会删除/覆盖数据或破坏系统,执行前务必确认 递归修改目录及其内容权限 chmod -R 644 ./public
高危:会删除/覆盖数据或破坏系统,执行前务必确认 修改文件属主与属组 chown www:www app.log
高危:会删除/覆盖数据或破坏系统,执行前务必确认 递归修改属主 chown -R www:www /var/www
注意:可能改变系统状态或中断服务,请谨慎 仅修改文件属组 chgrp staff data/
umask 设置新建文件/目录的默认权限掩码 umask 022
注意:会把文件锁死为不可修改/不可删除,连 root 也动不了,解除须 chattr -i,锁错关键配置会很麻烦 设置文件不可修改且不可删除(immutable,防误删,需 root;解除须 chattr -i) chattr +i important.conf
lsattr 查看文件特殊属性 lsattr important.conf
注意:可能改变系统状态或中断服务,请谨慎 以其他用户(默认 root)身份执行单条命令 sudo systemctl restart nginx
注意:可能改变系统状态或中断服务,请谨慎 切换用户(默认切到 root) su - deploy
newgrp 切换当前 shell 的有效用户组 newgrp docker

四、压缩与归档 - 打包、压缩、解压与查看压缩包

命令 / 语法 描述 示例 (Example)
tar -czf 用 gzip 打包并压缩为 .tar.gz tar -czf site.tar.gz /var/www
tar -xzf 解压 .tar.gz 到指定目录 tar -xzf site.tar.gz -C /tmp
tar -cjf 用 bzip2 压缩为 .tar.bz2 tar -cjf site.tar.bz2 /data
tar -tzf 仅查看压缩包内容列表 tar -tzf site.tar.gz
gzip 压缩单个文件(原文件被替换) gzip access.log
gunzip 解压 .gz 文件 gunzip access.log.gz
bzip2 bzip2 方式压缩 bzip2 bigfile
bunzip2 解压 .bz2 文件 bunzip2 bigfile.bz2
xz xz 高压缩比压缩 xz data.db
zip 创建 zip 压缩包,-r 递归 zip -r app.zip ./app
unzip 解压 zip 到指定目录 unzip app.zip -d /opt
zcat 不解压直接查看 .gz 内容 zcat access.log.gz | head
zgrep 在压缩文件中搜索内容 zgrep "404" access.log.gz

五、系统信息与进程 - 查看内核、负载、登录用户与管理进程

命令 / 语法 描述 示例 (Example)
uname -a 显示内核版本与系统信息 uname -a
hostname 显示当前主机名 hostname
uptime 显示运行时间与系统平均负载 uptime
whoami 显示当前登录用户名 whoami
who 显示当前已登录的所有用户 who
w 显示登录用户及其正在运行的进程 w
pgrep 按名称查找进程 PID pgrep -f nginx
vmstat 查看虚拟内存与 CPU 统计(需 sysstat) vmstat 1
top 实时监视进程与资源占用 top -p 1234
htop 增强版进程监视(需额外安装) htop
ps aux 查看全部进程快照 ps aux | grep nginx
pstree 以树形结构显示进程关系 pstree -p
注意:可能改变系统状态或中断服务,请谨慎 向进程发送信号,常用 -9 强杀 kill -9 1234
注意:可能改变系统状态或中断服务,请谨慎 按进程名结束进程 killall nginx
注意:可能改变系统状态或中断服务,请谨慎 按模式匹配结束进程 pkill -f "python app.py"
nohup 忽略挂断信号,后台持续运行 nohup ./server > out.log 2>&1 &
jobs 查看当前 shell 的后台任务 jobs
fg / bg 将后台任务切到前台 / 送回后台 fg %1

六、磁盘与内存 - 磁盘空间、分区、挂载与内存使用

命令 / 语法 描述 示例 (Example)
df -h 查看各挂载点磁盘空间使用 df -h
df -i 查看 inode 使用情况(排查 inode 耗尽) df -i
du -sh 查看目录总占用大小 du -sh /var/log
du -h --max-depth=1 查看各一级子目录大小 du -h --max-depth=1 /
free -h 查看内存与交换分区使用 free -h
lsblk 列出所有块设备与挂载关系 lsblk
fdisk -l 查看/管理磁盘分区表(需 root) fdisk -l
注意:可能改变系统状态或中断服务,请谨慎 挂载文件系统到指定目录(需 root) mount /dev/sdb1 /mnt/data
注意:可能改变系统状态或中断服务,请谨慎 卸载已挂载的文件系统 umount /mnt/data
blkid 查看设备 UUID 与文件系统类型 blkid /dev/sda1
sync 强制将内存缓存写入磁盘 sync
iostat 查看 CPU 与磁盘 I/O(需 sysstat) iostat -x 1

七、网络 - 连通性、端口、传输与 DNS 诊断

命令 / 语法 描述 示例 (Example)
ping 测试网络连通性,-c 指定次数 ping -c 4 example.com
ip a 查看/配置网络接口(替代 ifconfig) ip a
netstat -tunlp 查看监听端口与对应进程 netstat -tunlp | grep 80
ss -tunlp 更现代的端口查看工具 ss -tunlp | grep :80
curl 发送 HTTP 请求 / 下载文件 curl -fsSL https://get.docker.com
wget 下载文件,支持断点续传 wget -c https://example.com/file.iso
ssh 远程登录并执行命令 ssh user@192.168.1.10
scp 基于 SSH 的安全复制文件 scp app.tar.gz user@host:/tmp
注意:可能改变系统状态或中断服务,请谨慎 增量同步文件,适合大目录 rsync -avz ./src/ user@host:/dst/
nc 网络瑞士军刀,测试端口连通 nc -zv host 22
dig DNS 解析查询 dig +short example.com
traceroute 追踪到目标主机的路由路径 traceroute example.com
注意:可能改变系统状态或中断服务,请谨慎 查看防火墙规则(需 root) iptables -L -n -v
注意:可能改变系统状态或中断服务,请谨慎 简易防火墙管理(需 root) ufw allow 22
注意:可能改变系统状态或中断服务,请谨慎 端口扫描,仅用于自己授权的资产 nmap -sT 192.168.1.0/24
lsof 查看进程打开的文件与端口(看全部需 root) lsof -i:8080
nslookup DNS 解析查询(交互式,Windows 也通用) nslookup example.com
ip route 查看或配置路由表 ip route

八、用户与用户组 - 账号、用户组的新增/修改/删除与查询

命令 / 语法 描述 示例 (Example)
id 显示用户 UID / GID 及所属组 id deploy
useradd 新建用户,-m 建家目录(需 root) useradd -m -s /bin/bash deploy
高危:会删除/覆盖数据或破坏系统,执行前务必确认 删除用户,-r 同时删家目录(需 root) userdel -r deploy
注意:可能改变系统状态或中断服务,请谨慎 修改用户属性,如加入附加组 usermod -aG docker deploy
passwd 设置或修改用户密码(需 root) passwd deploy
groupadd 新建用户组(需 root) groupadd dev
高危:会删除/覆盖数据或破坏系统,执行前务必确认 删除用户组(需 root) groupdel dev
groups 显示用户所属的全部组 groups deploy
chage 设置密码过期策略(需 root) chage -M 90 deploy
getent 查询系统数据库(passwd/group 等) getent passwd deploy
last 查看用户登录历史 last -n 20
lastlog 显示所有用户最后一次登录时间 lastlog

九、软件包管理 - 不同发行版的安装、查询与升级

命令 / 语法 描述 示例 (Example)
apt update 更新软件包索引(Debian/Ubuntu) sudo apt update
apt install 安装软件包 sudo apt install -y nginx
注意:可能改变系统状态或中断服务,请谨慎 卸载软件包(保留配置) sudo apt remove nginx
注意:可能改变系统状态或中断服务,请谨慎 升级所有已安装包 sudo apt upgrade -y
apt-cache search 搜索可用软件包 apt-cache search redis
dpkg -i 安装本地 .deb 包 sudo dpkg -i pkg.deb
dpkg -l 列出已安装的 deb 包 dpkg -l | grep nginx
yum install 安装软件(CentOS/RHEL 7) sudo yum install -y httpd
dnf install 安装软件(CentOS 8+/Fedora) sudo dnf install -y httpd
rpm -ivh 安装本地 .rpm 包 sudo rpm -ivh pkg.rpm
rpm -qa 列出已安装的 rpm 包 rpm -qa | grep httpd
snap install 安装 snap 包 sudo snap install code
pip install 安装 Python 包 pip install -r requirements.txt
pacman -S 安装软件包(Arch/Manjaro 系) sudo pacman -S nginx
apk add 安装软件包(Alpine 系) apk add curl

十、服务与电源 - 系统服务、定时任务与开关机

命令 / 语法 描述 示例 (Example)
systemctl start 启动某个 systemd 服务 sudo systemctl start nginx
注意:可能改变系统状态或中断服务,请谨慎 停止服务 sudo systemctl stop nginx
注意:可能改变系统状态或中断服务,请谨慎 重启服务 sudo systemctl restart nginx
systemctl enable 设置开机自启动 sudo systemctl enable nginx
systemctl status 查看服务运行状态 systemctl status nginx
service SysV 风格服务管理(兼容旧系统) sudo service nginx restart
crontab -e 编辑当前用户的定时任务 crontab -e
crontab -l 列出当前用户的定时任务 crontab -l
高危:会删除/覆盖数据或破坏系统,执行前务必确认 关机,-h now 立即执行 sudo shutdown -h now
高危:会删除/覆盖数据或破坏系统,执行前务必确认 重启系统 sudo reboot
高危:会删除/覆盖数据或破坏系统,执行前务必确认 关机(等同 shutdown -h now) sudo poweroff
高危:会删除/覆盖数据或破坏系统,执行前务必确认 切换运行级别(旧式,现代多用 systemctl) sudo init 3
高危:会删除/覆盖数据或破坏系统,执行前务必确认 取消服务开机自启动 sudo systemctl disable nginx
journalctl 查看 systemd 服务日志(替代 tail /var/log) journalctl -u nginx -f

十一、Shell 与环境 - 变量、别名、历史与基础求值工具

命令 / 语法 描述 示例 (Example)
echo 输出文本或变量值 echo $PATH
printf 按格式输出文本 printf "%s\n" "hello"
export 导出环境变量(当前 shell 及子进程有效) export NODE_ENV=production
env 显示/过滤所有环境变量 env | grep PATH
alias 为命令设置别名 alias ll="ls -l"
unalias 取消已设置的别名 unalias ll
source 在当前 shell 执行脚本(不启子进程) source ~/.bashrc
type 查看命令类型(别名/内建/路径) type ls
which 显示命令可执行文件路径 which python3
history 查看命令历史记录 history | grep ssh
date 显示或格式化系统日期时间 date "+%Y-%m-%d %H:%M:%S"
seq 生成数字序列 seq 1 5
man 查看命令的手册页(按 q 退出) man ls
clear 清空当前终端屏幕 clear

十二、实用工具 - 运维常用的组合与辅助命令

命令 / 语法 描述 示例 (Example)
watch 周期性执行命令并全屏刷新 watch -n 1 'df -h'
xargs 将标准输入转为命令参数 find . -name "*.tmp" | xargs rm
tee 输出同时分流到文件与屏幕 make 2>&1 | tee build.log
sleep 暂停指定秒数后继续 sleep 5 && echo done
time 测量命令执行耗时 time ./build.sh
cal 显示日历 cal 2026
bc 命令行计算器 echo "2+3*4" | bc
split 按大小或行数分割大文件 split -b 100M big.iso part_
paste 按列合并多个文件 paste a.txt b.txt
timeout 限制命令最长运行时间 timeout 10 ping example.com
yes 持续输出指定字符串(常用于确认) yes | head -n 3

示例中的路径、参数请替换为你的实际值;点击表格中任意单元格可复制该格内容;数据仅供参考,实际请以官方最新标准为准。

工具简介

Linux命令大全收录了 173 个服务器运维和日常开发中最常用的 Linux 命令,按「文件与目录、内容查看、用户与权限、进程管理、网络工具、磁盘与空间、压缩打包、系统服务」等 12 类分组,每条命令附中文描述与示例。

对新手而言,先掌握 ls、cd、cp、mv、rm、cat、grep、chmod、ps、top 这批高频命令就能应付大部分日常操作;对运维同学,systemctl、journalctl、df、du、netstat 等排查命令的使用频率更高。

建议结合顶部搜索框按命令名或功能关键词查找,点击单元格即可复制,贴进终端或脚本直接使用。

功能特点

📁 文件操作全覆盖

创建、查找、移动、权限、软链接等文件目录操作一应俱全。

⚙️ 进程与服务

ps、top、kill、systemctl 等进程与服务管理命令分门别类。

🌐 网络排查工具

curl、ping、netstat、ss、scp 等网络命令集中速查。

📦 压缩与打包

tar、gzip、zip 常用压缩参数示例,备份恢复不查手册。

🔍 搜索即复制

关键词筛选定位命令,点击单元格复制,效率拉满。

🐧 面向实战

示例贴近服务器真实场景,替换路径即可执行。

使用方法

1定位场景

按文件、进程、网络等分类缩小范围,或直接搜索命令名。

2确认参数

阅读描述与示例,确认参数与路径,避免误操作。

3复制执行

点击复制命令,粘贴到终端执行,敏感操作先备份。

4善用帮助

不确定参数时用 man 命令 或 命令 --help 查看完整说明。

Linux命令大全常见问题 (FAQ)

rm -rf 有多危险?怎么避免误删?

rm -rf 会递归强制删除且不进回收站,路径写错(多空格、错变量)可能造成灾难。删除前用 ls 先确认路径,重要数据做好备份,脚本中避免拼变量删除。

chmod 755 和 644 是什么意思?

三组数字依次是所有者、组、其他用户的权限,r=4、w=2、x=1 相加。755 表示所有者可读写执行、其他人可读执行,常用于目录和脚本;644 表示文件所有者可读写、其他人只读。

查找文件用 find 还是 locate?

find 按条件实时遍历,结果准确适合精确查找;locate 依赖 updatedb 建立的索引,速度快但结果可能滞后。临时查找用 find,全盘模糊搜索用 locate 更快。

如何查看端口被哪个进程占用?

用 ss -tlnp | grep 端口号 或 netstat -tlnp | grep 端口号,再结合 lsof -i:端口号 可直接看到占用进程,找到 PID 后可按需 kill。