从零学 Linux:超全常用命令整理

2026-07-23 09:20:54 RAIZ

一、文件与目录管理

1.1 目录操作

命令
说明
示例
pwd
显示当前目录路径
pwd
ls
列出目录内容
ls -la
cd
切换目录
cd /home
mkdir
创建目录
mkdir -p a/b/c
rmdir
删除空目录
rmdir dir
tree
树形显示目录
tree -L 2


# ls 常用选项ls -l      # 详细列表ls -a      # 显示所有文件(包括隐藏)ls -h      # 人类可读格式ls -R      # 递归显示子目录ls -lt     # 按时间排序
# cd 常用cd         # 回到用户主目录cd ~       # 回到用户主目录cd -       # 回到上一个目录cd ..      # 上级目录

1.2 文件操作

命令
说明
示例
touch
创建空文件/更新时间戳
touch file.txt
cp
复制文件或目录
cp -r src dst
mv
移动或重命名
mv old new
rm
删除文件或目录
rm -rf dir
ln
创建链接
ln -s target link


# cp 常用cp file1 file2           # 复制文件cp -r dir1 dir2          # 复制目录cp -i file1 file2        # 覆盖前提示cp -p file1 file2        # 保留权限和时间cp -u file1 file2        # 只复制更新的文件
# rm 常用rm file.txt              # 删除文件rm -r dir                # 删除目录rm -f file.txt           # 强制删除(不提示)rm -rf dir               # 强制删除目录(危险!)

1.3 查看文件内容

命令
说明
示例
cat
显示完整内容
cat file.txt
more
分页查看(下翻)
more file.txt
less
分页查看(上下翻)
less file.txt
head
显示文件头部
head -n 20 file.txt
tail
显示文件尾部
tail -f file.txt
grep
搜索文本
grep "error" log.txt


# grep 常用grep "pattern" file      # 搜索grep -i "pattern" file   # 忽略大小写grep -r "pattern" ./     # 递归搜索grep -v "pattern" file   # 排除匹配行grep -n "pattern" file   # 显示行号grep -E "a|b" file       # 正则表达式
# tail 常用tail -f app.log          # 实时查看日志(最常用)tail -n 100 app.log      # 显示最后100行

二、权限管理

2.1 查看权限


ls -l file.txt# 输出: -rw-r--r-- 1 user group 1024 Jan 1 12:00 file.txt# 权限格式: [类型][user][group][other]# r=读, w=写, x=执行# - = 文件, d = 目录

2.2 修改权限 (chmod)


# 数字方式chmod 755 file           # rwxr-xr-xchmod 644 file           # rw-r--r--chmod 600 file           # rw-------chmod 755 -R dir         # 递归修改
# 符号方式chmod u+x file           # 用户增加执行chmod g-w file           # 组移除写chmod o=r file           # 其他只读chmod a+rwx file         # 所有用户增加读写执行
# 权限数字对照# 4 = 读 (r)# 2 = 写 (w)# 1 = 执行 (x)# 7 = 4+2+1 (rwx)# 6 = 4+2 (rw-)# 5 = 4+1 (r-x)

2.3 修改所有者 (chown/chgrp)


# 修改文件所有者chown user:group file
# 只修改所有者chown user file
# 只修改所属组chown :group file
# 递归修改chown -R user:group dir
# 修改所属组chgrp group file

三、进程管理

3.1 查看进程

命令
说明
示例
ps
查看进程
ps aux
top
实时进程监控
top
htop
增强版 top
htop
pstree
树形进程
pstree
pgrep
按名称查找进程
pgrep java


# ps 常用ps aux                    # 所有进程ps aux | grep java        # 查找 Java 进程ps -ef                    # 完整格式ps -ef --forest           # 树形显示ps -eo pid,cmd,%cpu,%mem  # 自定义输出
# top 快捷键# P: 按 CPU 排序# M: 按内存排序# k: 杀死进程# q: 退出

3.2 控制进程

命令
说明
示例
kill
结束进程
kill -9 PID
pkill
按名称结束
pkill java
killall
结束所有同名进程
killall java
nohup
后台运行,不受终端影响
nohup java -jar app.jar &
&
后台运行
java -jar app.jar &


# kill 信号kill -15 PID    # SIGTERM(正常终止,可捕获)kill -9 PID     # SIGKILL(强制终止,不可捕获)kill -1 PID     # SIGHUP(重新加载配置)
# jobs 查看后台任务jobsfg %1           # 将后台任务调到前台bg %1           # 将暂停任务放到后台继续运行

3.3 系统监控

命令
说明
示例
free
查看内存使用
free -h
df
查看磁盘使用
df -h
du
查看目录大小
du -sh /var
uptime
系统运行时间
uptime
netstat
网络状态
netstat -tlnp
ss
网络状态(更快)
ss -tlnp
lsof
打开的文件
lsof -i:8080
dmesg
内核日志
dmesg | tail


# free 常用free -h                 # 人类可读free -m                 # 以 MB 显示
# df 常用df -h                   # 人类可读df -i                   # 查看 inode
# du 常用du -sh *                # 当前目录各文件夹大小du -sh /var/log         # 日志目录大小
# netstat 常用netstat -tlnp           # 查看监听端口netstat -an             # 所有连接netstat -r              # 路由表
# lsof 常用lsof -i :8080           # 查看端口占用lsof -p PID             # 查看进程打开的文件

四、文本处理

4.1 常用文本工具

命令
说明
示例
grep
搜索文本
grep error app.log
sed
流编辑器
sed 's/old/new/g' file
awk
文本处理
awk '{print $1}' file
cut
切割文本
cut -d: -f1 /etc/passwd
sort
排序
sort -rn
uniq
去重
uniq -c
wc
统计
wc -l file


# sed 常用sed 's/foo/bar/g' file      # 替换所有 foo 为 barsed -i 's/old/new/g' file   # 直接修改文件sed '/pattern/d' file       # 删除匹配行sed -n '10,20p' file        # 打印第10-20行
# awk 常用awk '{print $1, $3}' file   # 打印第1和第3列awk '{sum+=$1} END {print sum}' # 求和awk -F: '{print $1}' /etc/passwd # 指定分隔符awk '/error/{print}' file   # 打印包含 error 的行
# wc 常用wc -l file          # 行数wc -w file          # 单词数wc -c file          # 字节数
# sort + uniq 组合sort file | uniq -c          # 统计重复次数sort -rn file                # 降序排序sort -k2 file                # 按第二列排序

五、压缩与归档

命令
说明
示例
tar
打包/解包
tar -czvf archive.tar.gz dir
gzip
压缩(.gz)
gzip file
gunzip
解压(.gz)
gunzip file.gz
zip
压缩(.zip)
zip -r archive.zip dir
unzip
解压(.zip)
unzip archive.zip
bzip2
压缩(.bz2)
bzip2 file


# tar 常用tar -czvf archive.tar.gz dir/     # 创建 .tar.gztar -xzvf archive.tar.gz          # 解压 .tar.gztar -cjvf archive.tar.bz2 dir/    # 创建 .tar.bz2tar -xjvf archive.tar.bz2         # 解压 .tar.bz2
# 常用参数# c: create 创建# x: extract 解压# z: gzip 压缩# j: bzip2 压缩# v: verbose 显示过程# f: file 指定文件名# t: 查看内容

六、网络相关

命令
说明
示例
ping
测试网络连通性
ping google.com
curl
HTTP 请求
curl -X GET http://api.com
wget
下载文件
wget https://file.com/file
ssh
远程连接
ssh user@host
scp
远程复制文件
scp file user@host:/path
rsync
同步文件
rsync -av src/ dest/
telnet
端口测试
telnet host 80
nc
瑞士军刀
nc -zv host 80


# curl 常用curl http://localhost:8080/health   # GET 请求curl -X POST -d '{"key":"value"}'   # POST 请求curl -H "Authorization: Bearer token" # 添加头部curl -o output.html http://site.com  # 保存文件
# scp 常用scp file.txt user@server:/path/      # 上传scp user@server:/path/file.txt ./    # 下载scp -r dir/ user@server:/path/       # 递归上传目录scp -P 2222 file.txt user@server:/   # 指定端口
# rsync 常用rsync -av /source/ /dest/            # 同步本地目录rsync -av -e ssh /source/ user@host:/dest/  # 远程同步

七、用户与权限管理

命令
说明
示例
whoami
当前用户
whoami
who
登录用户
who
id
用户信息
id
useradd
添加用户
useradd -m user
usermod
修改用户
usermod -aG group user
userdel
删除用户
userdel -r user
passwd
修改密码
passwd user
su
切换用户
su - root
sudo
以 root 执行
sudo command


# 用户管理useradd -m -s /bin/bash user    # 创建用户passwd user                     # 设置密码usermod -aG sudo user           # 添加到 sudo 组userdel -r user                 # 删除用户
# 组管理groupadd group                  # 添加组groupdel group                  # 删除组groups user                     # 查看用户所属组

八、常用快捷键

快捷键
说明
Ctrl + C
终止当前命令
Ctrl + Z
暂停当前命令
Ctrl + D
退出终端
Ctrl + L
清屏
Ctrl + A
移动到行首
Ctrl + E
移动到行尾
Ctrl + U
删除光标前所有
Ctrl + K
删除光标后所有
Ctrl + R
搜索历史命令
Tab
自动补全
!!
重复上一条命令
!$
上一条命令的最后一个参数

九、常用命令速查表

命令
说明
ls -la
查看所有文件
pwd
查看当前路径
cd ~
回到用户目录
mkdir -p
创建目录
rm -rf
强制删除(慎用!)
cp -r
复制目录
mv
移动/重命名
tail -f
实时查看日志
grep -r
递归搜索
ps aux
查看进程
kill -9
强制杀进程
netstat -tlnp
查看端口
free -h
查看内存
df -h
查看磁盘
du -sh
查看目录大小
tar -czvf
打包压缩
tar -xzvf
解压
scp
远程复制
ssh
远程连接
chmod 755
修改权限
chown
修改所有者


注:转载文章来源于网络,版权归原作者或企业所有,侵删!





我要咨询