2025年必备:掌握这50个Linux命令,让你的工作效率提升10倍!

2025年必备:掌握这50个Linux命令,让你的工作效率提升10倍!

100个最实用的Linux命令,帮你从Linux小白蜕变为命令行高手!

核心命令分类速览

分类 命令数量 重要程度 学习优先级
文件操作 10个 ⭐⭐⭐⭐⭐ 🔥 必学
文本处理 9个 ⭐⭐⭐⭐ 🔥 必学
系统监控 10个 ⭐⭐⭐⭐⭐ 🔥 必学
进程管理 6个 ⭐⭐⭐⭐ 📚 重要
网络操作 7个 ⭐⭐⭐ 📚 重要
权限管理 3个 ⭐⭐⭐⭐ 📚 重要
压缩归档 3个 ⭐⭐⭐ 📖 一般
用户管理 2个 ⭐⭐⭐ 📖 一般
系统服务 1个 ⭐⭐⭐⭐ 📚 重要

第一部分:必须掌握的文件操作命令(10个)

超高频使用命令(日常必备)

1. ls – 目录内容查看神器

# 基础用法
ls -la          # 详细列出所有文件(包括隐藏文件)
ls -lh          # 以人类可读格式显示文件大小
ls -lt          # 按修改时间排序

# 高级技巧
ls -la | grep "^d"  # 只显示目录
ls -la | grep "\.txt$"  # 只显示txt文件

💡 实战技巧: 创建别名提高效率

alias ll='ls -la'
alias la='ls -la'
alias l='ls -CF'

2. cd – 目录导航专家

cd /path/to/dir # 切换到指定目录
cd ~            # 切换到用户主目录
cd -            # 切换到上一个目录(超实用!)
cd ..           # 切换到上级目录
cd ../..        # 切换到上两级目录

💡 专家提示: 使用cd -在两个目录间快速切换,效率提升50%!

3. find – 文件查找利器

# 按名称查找
find /path -name "*.txt"    # 查找所有txt文件
find . -name "config*"      # 查找以config开头的文件

# 按大小查找
find /path -type f -size +1M # 查找大于1M的文件
find /path -type f -size -1k # 查找小于1k的文件

# 按时间查找
find /path -mtime -7        # 查找7天内修改的文件
find /path -atime +30       # 查找30天前访问的文件

🎯 实战案例: 清理大文件释放磁盘空间

# 查找大于100M的文件
find / -type f -size +100M -exec ls -lh {} \; 2>/dev/null

4. cp 和 mv – 文件操作双雄

# cp - 复制文件
cp file1 file2              # 复制文件
cp -r dir1 dir2             # 递归复制目录
cp -p file1 file2           # 保持文件属性复制
cp -u source/* dest/        # 只复制更新的文件

# mv - 移动/重命名
mv file1 file2              # 重命名文件
mv file1 /path/             # 移动文件到指定目录
mv *.txt backup/            # 批量移动txt文件

5. rm – 删除命令(谨慎使用!)

rm filename                 # 删除文件
rm -r dirname               # 递归删除目录
rm -f filename              # 强制删除文件
rm -rf dirname              # 强制递归删除目录

# 安全删除技巧
rm -i filename              # 交互式删除,每次确认

⚠️ 安全警告: 永远不要执行 rm -rf /,这会删除整个系统!

6. mkdir – 创建目录

mkdir dirname               # 创建单个目录
mkdir -p a/b/c              # 递归创建多级目录
mkdir -m 755 dir            # 创建目录并设置权限
mkdir {dir1,dir2,dir3}      # 批量创建目录

7. pwd – 显示当前位置

pwd                         # 显示当前完整路径

8. tree – 目录树状显示

tree                        # 显示当前目录树
tree -L 2                   # 只显示2级目录
tree -a                     # 显示所有文件(包括隐藏文件)
tree -h                     # 显示文件大小

9. du – 磁盘使用情况

du -h                       # 以人类可读格式显示
du -sh *                    # 显示当前目录下各文件/目录大小
du -sh /path                # 显示指定目录总大小
du -ah | sort -hr | head -10 # 显示最大的10个文件/目录

10. df – 文件系统空间

df -h                       # 以人类可读格式显示
df -T                       # 显示文件系统类型
df -i                       # 显示inode使用情况

💡 运维技巧: 监控磁盘空间使用率

df -h | awk '$5 > 80 {print $0}' # 显示使用率超过80%的分区

第二部分:文本处理命令精通(9个)

 文件内容查看命令

11. cat – 文件内容显示

cat filename                # 显示文件内容
cat -n filename             # 显示行号
cat file1 file2             # 连接显示多个文件
cat -A filename             # 显示所有字符(包括不可见字符)

💡 less快捷键:

  • 空格键 – 下一页
  • b – 上一页
  • /pattern – 搜索
  • q – 退出

13. head 和 tail – 文件头尾查看

# head - 查看文件开头
head filename               # 显示前10行
head -n 20 file             # 显示前20行
head -c 100 file            # 显示前100个字符

# tail - 查看文件末尾
tail filename               # 显示后10行
tail -n 20 file             # 显示后20行
tail -f filename            # 实时监控文件变化(日志分析必备!)
tail -F filename            # 即使文件被重命名也继续监控

🎯 实战案例: 实时监控多个日志文件

tail -f /var/log/apache2/access.log /var/log/apache2/error.log

14. grep – 文本搜索王者

# 基础搜索
grep "pattern" file         # 搜索包含pattern的行
grep -i "pattern" file      # 忽略大小写搜索
grep -v "pattern" file      # 显示不包含pattern的行
grep -n "pattern" file      # 显示行号

# 高级搜索
grep -r "pattern" dir       # 递归搜索目录
grep -E "pattern1|pattern2" file # 使用正则表达式
grep -A 3 -B 3 "pattern" file    # 显示匹配行前后3行

💡 实战技巧: 日志分析常用命令

# 查找错误日志
grep -i "error" /var/log/syslog

# 统计IP访问次数
grep -o '[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}' access.log | sort | uniq -c | sort -nr

15. awk – 文本处理专家

awk '{print $1}' file       # 打印第一列
awk -F: '{print $1}' /etc/passwd # 以:为分隔符打印第一列
awk 'NR==1,NR==10' file     # 打印1-10行
awk '{sum+=$1} END {print sum}' file # 计算第一列的总和

16. sed – 流编辑器

sed 's/old/new/g' file      # 替换文本
sed -n '1,10p' file         # 打印1-10行
sed -i 's/old/new/g' file   # 直接修改文件
sed '/pattern/d' file       # 删除包含pattern的行

17. sort – 文本排序

sort filename               # 按字母顺序排序
sort -n file                # 按数字排序
sort -r file                # 逆序排序
sort -k2 file               # 按第二列排序
sort -u file                # 排序并去重

18. uniq – 去除重复

uniq filename               # 去除相邻重复行
sort file | uniq            # 去除所有重复行
uniq -c file                # 统计重复次数
uniq -d file                # 只显示重复行

19. wc – 文本统计

wc filename                 # 显示行数、词数、字符数
wc -l filename              # 只显示行数
wc -w filename              # 只显示词数
wc -c filename              # 只显示字符数

🎯 实战案例: 分析代码行数

find . -name "*.py" -exec wc -l {} + | sort -nr

第三部分:系统监控命令大师(10个)

系统状态监控

20. top 和 htop – 进程监控

top                         # 实时显示进程信息
top -u username             # 显示指定用户的进程
htop                        # 彩色交互式进程查看器(推荐安装)

💡 top快捷键:

  • P – 按CPU使用率排序
  • M – 按内存使用率排序
  • k – 终止进程
  • q – 退出

21. ps – 进程快照

ps aux                      # 显示所有进程详细信息
ps -ef                      # 显示所有进程
ps -u username              # 显示指定用户的进程
ps aux | grep process_name  # 查找特定进程

22. free – 内存使用情况

free -h                     # 以人类可读格式显示内存信息
free -m                     # 以MB为单位显示
free -s 5                   # 每5秒刷新一次

💡 内存分析技巧:

# 查看内存使用率
free | awk 'NR==2{printf "Memory Usage: %s/%sMB (%.2f%%)\n", $3,$2,$3*100/$2 }'

23. uname – 系统信息

uname -a                    # 显示所有系统信息
uname -r                    # 显示内核版本
uname -m                    # 显示机器架构

24. uptime – 系统运行时间

uptime                      # 显示系统运行时间和负载

25. lscpu – CPU信息

lscpu                       # 显示CPU详细信息
cat /proc/cpuinfo           # 查看CPU详细信息

26. lsblk – 块设备信息

lsblk                       # 以树形结构显示块设备
lsblk -f                    # 显示文件系统信息

27. whowwhoami – 用户信息

whoami                      # 显示当前登录用户名
who                         # 显示当前登录的所有用户
w                           # 显示登录用户及其正在执行的命令
id                          # 显示当前用户的UID和GID

28. history – 命令历史

history                     # 显示命令历史
history | grep command      # 搜索历史命令
history -c                  # 清空历史记录
!!                          # 执行上一条命令
!n                          # 执行历史记录中第n条命令

💡 历史命令技巧:

# 设置历史记录数量
export HISTSIZE=10000
export HISTFILESIZE=10000

# 避免重复记录
export HISTCONTROL=ignoredups

 第四部分:进程管理命令精通(6个)

 进程控制命令

29. kill – 进程终止

kill PID                    # 终止指定PID的进程
kill -9 PID                 # 强制终止进程(SIGKILL)
kill -TERM PID              # 发送TERM信号(优雅终止)
kill -HUP PID               # 发送HUP信号(重新加载配置)

💡 信号类型说明:

  • TERM (15) – 优雅终止,允许进程清理资源
  • KILL (9) – 强制终止,立即杀死进程
  • HUP (1) – 挂起信号,通常用于重新加载配置

30. killall 和 pkill – 批量终止

# killall - 按名称终止
killall process_name        # 终止所有同名进程
killall -9 process          # 强制终止所有同名进程

# pkill - 按条件终止
pkill -f pattern            # 按命令行模式终止进程
pkill -u username           # 终止指定用户的所有进程

31. pgrep – 进程查找

pgrep process_name          # 查找进程PID
pgrep -u username           # 查找指定用户的进程
pgrep -f pattern            # 按完整命令行查找

32. nohup – 后台运行

nohup command &             # 后台运行命令,忽略挂起信号
nohup python script.py > output.log 2>&1 &  # 重定向输出到日志

33. jobsbgfg – 作业控制

jobs                        # 显示当前shell的作业列表
bg %1                       # 将作业1放到后台运行
fg %1                       # 将作业1调到前台运行

💡 作业控制技巧:

  • Ctrl+Z – 暂停当前进程
  • Ctrl+C – 终止当前进程
  • & – 在命令末尾添加,直接后台运行

34. screen 和 tmux – 终端复用

# screen
screen                      # 启动新的screen会话
screen -S session_name      # 创建命名会话
screen -r                   # 恢复screen会话
screen -list                # 列出所有会话

# tmux(推荐)
tmux                        # 启动新的tmux会话
tmux new -s session_name    # 创建命名会话
tmux attach                 # 附加到tmux会话
tmux list-sessions          # 列出所有会话

第五部分:网络操作命令(7个)

网络连接测试

35. ping – 网络连通性测试

ping hostname               # 测试到主机的连通性
ping -c 4 host              # 发送4个包后停止
ping -i 2 host              # 每2秒发送一个包
ping -s 1000 host           # 发送1000字节的包

36. wget 和 curl – 文件下载

# wget
wget URL                    # 下载文件
wget -c URL                 # 断点续传下载
wget -r URL                 # 递归下载
wget -O filename URL        # 指定保存文件名

# curl
curl URL                    # 获取URL内容
curl -O URL                 # 下载文件
curl -X POST URL            # 发送POST请求
curl -H "Content-Type: application/json" -d '{"key":"value"}' URL

🎯 实战案例: API测试

# 测试REST API
curl -X GET "https://api.example.com/users" -H "Authorization: Bearer token"

37. ssh – 安全远程登录

ssh user@host              # SSH登录远程主机
ssh -p 2222 user@host      # 指定端口登录
ssh -i keyfile user@host   # 使用密钥文件登录
ssh -L 8080:localhost:80 user@host # 本地端口转发

38. scp – 安全文件传输

scp file user@host:/path    # 复制文件到远程主机
scp user@host:/path/file .  # 从远程主机复制文件
scp -r dir user@host:/path  # 递归复制目录

39. rsync – 高效同步

rsync -av source/ dest/     # 同步目录
rsync -av user@host:/path/ . # 从远程同步
rsync -av --delete source/ dest/ # 同步并删除目标多余文件

40. netstat 和 ss – 网络连接

# netstat(传统)
netstat -tuln               # 显示监听端口
netstat -an                 # 显示所有网络连接
netstat -r                  # 显示路由表

# ss(现代替代)
ss -tuln                    # 显示监听端口
ss -an                      # 显示所有连接
ss -p                       # 显示进程信息

41. ifconfig 和 ip – 网络配置

# ifconfig(传统)
ifconfig                    # 显示网络接口信息
ifconfig eth0 up            # 启用网络接口

# ip(现代替代)
ip addr show                # 显示IP地址
ip route show               # 显示路由表
ip link show                # 显示网络接口

第六部分:压缩归档命令(3个)

tar归档命令

42. tar – 归档文件

# 创建归档
tar -czf archive.tar.gz files    # 创建gzip压缩归档
tar -cjf archive.tar.bz2 files   # 创建bzip2压缩归档
tar -cJf archive.tar.xz files    # 创建xz压缩归档

# 解压归档
tar -xzf archive.tar.gz          # 解压gzip归档
tar -xjf archive.tar.bz2         # 解压bzip2归档
tar -xJf archive.tar.xz          # 解压xz归档

# 查看归档
tar -tf archive.tar              # 查看归档内容
tar -tzf archive.tar.gz          # 查看压缩归档内容

💡 tar参数记忆法:

  • c – create(创建)
  • x – extract(解压)
  • t – list(列出)
  • z – gzip压缩
  • j – bzip2压缩
  • J – xz压缩
  • f – file(文件)
  • v – verbose(详细输出)

43. gzip 和 gunzip

gzip filename               # 压缩文件
gzip -d file.gz             # 解压文件
gunzip file.gz              # 解压gzip文件
gzip -9 filename            # 最大压缩比

44. zip 和 unzip

zip archive.zip files       # 创建zip归档
zip -r archive.zip dir      # 递归压缩目录
unzip archive.zip           # 解压zip文件
unzip -l archive.zip        # 查看zip内容

第七部分:权限管理命令(3个)

文件权限控制

45. chmod – 修改文件权限

# 数字模式
chmod 755 filename          # 设置权限为rwxr-xr-x
chmod 644 filename          # 设置权限为rw-r--r--
chmod 600 filename          # 设置权限为rw-------

# 符号模式
chmod +x filename           # 添加执行权限
chmod -w filename           # 移除写权限
chmod u+x,g-w,o-r file      # 复杂权限设置

💡 权限数字对照表:

  • 4 – 读权限(r)
  • 2 – 写权限(w)
  • 1 – 执行权限(x)
  • 7 = 4+2+1 = rwx
  • 6 = 4+2 = rw-
  • 5 = 4+1 = r-x

46. chown – 修改文件所有者

chown user filename         # 修改文件所有者
chown user:group file       # 修改所有者和组
chown -R user:group dir     # 递归修改目录

47. chgrp – 修改文件所属组

chgrp group filename        # 修改文件所属组
chgrp -R group dirname      # 递归修改目录所属组

第八部分:用户管理命令(2个)

🔑 用户切换和权限

48. su 和 sudo – 用户切换

# su - 切换用户
su username                 # 切换到指定用户
su -                        # 切换到root用户
su - username               # 切换用户并加载环境

# sudo - 临时提权
sudo command                # 以root身份执行命令
sudo -u user command        # 以指定用户身份执行
sudo -i                     # 切换到root shell

49. passwd – 密码管理

passwd                      # 修改当前用户密码
passwd username             # 修改指定用户密码(需要权限)
passwd -l username          # 锁定用户账户
passwd -u username          # 解锁用户账户

第九部分:系统服务命令(1个)

服务管理

50. systemctl – 现代服务管理

systemctl status service    # 查看服务状态
systemctl start service     # 启动服务
systemctl stop service      # 停止服务
systemctl restart service   # 重启服务
systemctl enable service    # 设置服务开机启动
systemctl disable service   # 禁用服务开机启动
systemctl list-units        # 列出所有服务

本文链接:https://www.ranshare.com/396/

© 版权声明
THE END
喜欢就支持一下吧
点赞12 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容