前言

不管是刚接触云服务器的小白,还是已经运维多年的老司机,Linux命令都是绕不开的基本功。每次登录服务器后一脸茫然?部署项目时不知道文件在哪?服务挂了不知道怎么排查?——这些问题,归根结底都是Linux命令不够熟。

这篇文章整理了云服务器上最常用、最高频的Linux命令,按场景分类,随查随用。建议收藏,下次遇到问题直接翻出来对照。

适用环境:CentOS / Ubuntu / Debian 等主流Linux发行版,命令基本通用。

一、系统信息查看——先搞清楚你面对的是谁

登录服务器第一件事:看看这机器什么情况。

命令作用
uname -a查看系统内核版本和硬件信息
cat /etc/os-release查看操作系统发行版和版本号(CentOS/Ubuntu等)
hostnamectl查看主机名和系统详细信息
uptime查看系统运行了多久、当前负载
free -h查看内存和交换空间使用情况(-h让人能看懂)
df -h查看磁盘分区使用率
lscpu查看CPU详细信息
lsblk查看块设备(磁盘分区)信息

实操示例:

bash

# 看一眼系统版本
cat /etc/os-release

# 服务器跑了多久?负载高不高?
uptime
# 输出:10:30:00 up 100 days, load average: 0.05, 0.10, 0.15

# 内存还剩多少?
free -h

# 磁盘快满了吗?
df -h

二、文件与目录操作——最常用,必须烂熟于心

这部分是日常使用频率最高的命令,没有之一。

导航与查看

命令作用
pwd显示当前所在目录的绝对路径——“我在哪?”
ls列出目录内容
ls -l以详细列表显示(权限、大小、修改时间)
ls -a显示所有文件,包括隐藏文件(以.开头)
ls -lh详细列表 + 人类可读的文件大小
cd /path切换到指定目录
cd ..返回上一级目录
cd ~返回当前用户的家目录
cd -返回上一个所在目录

创建与删除

命令作用
touch file.txt创建空文件,或更新文件时间戳
mkdir dir创建目录
mkdir -p a/b/c递归创建多级目录
rm file.txt删除文件
rm -r dir递归删除目录及其内容
rm -rf dir强制删除,不提示(⚠️高危!) 

⚠️ 血的教训: rm -rf / 是删库跑路专用命令,千万别手抖!新手建议用 mv 移到 /tmp 代替直接删除。

复制与移动

命令作用
cp source dest复制文件
cp -r dir1 dir2递归复制目录
cp -a src dst归档复制,保留原属性
mv old new移动文件或重命名

压缩与解压

命令作用
tar -czf archive.tar.gz /path打包并压缩成.tar.gz
tar -xzf archive.tar.gz解压.tar.gz文件
zip -r site.zip /var/www/site压缩成zip
unzip site.zip解压zip文件

三、文件查看与日志排查——运维的核心技能

服务出问题了,第一反应就是看日志

命令作用
cat file一次性显示整个文件(适合小文件)
less file分页查看(大文件专用,按q退出,按/搜索)
head -20 file查看文件前20行
tail -20 file查看文件后20行
tail -f file实时追踪日志更新(运维神器!) 
wc -l file统计文件行数

实战场景:

bash

# 实时盯着nginx访问日志
tail -f /var/log/nginx/access.log

# 查看系统日志最后100行
tail -100 /var/log/messages

💡 tail -f 是运维的“第三只手”,排查线上问题必备。

四、文本搜索——大海捞针就靠它

命令作用
grep "error" file.log在文件中搜索包含"error"的行
grep -i "error" file.log忽略大小写搜索
grep -r "nginx" /etc递归搜索整个目录
grep -rn "mysql" /etc/递归搜索并显示行号
find / -name "*.log"在根目录下查找所有.log文件
find /var -size +100M查找大于100MB的文件

组合技(管道符|的威力):

bash

# 查找nginx进程
ps aux | grep nginx

# 统计日志中"ERROR"出现次数
grep "ERROR" app.log | wc -l

五、权限管理——多人协作的边界

云服务器通常是多人共用,权限管理必须搞清楚。

命令作用
ls -l查看文件权限
chmod 755 script.sh修改文件权限
chown user:group file修改文件所有者和所属组
useradd username创建新用户
passwd username设置用户密码
su - username切换用户
whoami查看当前登录的用户名
sudo command以管理员权限执行命令

权限速记:

  • r(读)= 4,w(写)= 2,x(执行)= 1

  • 755 = 所有者可读写执行(7),同组用户可读执行(5),其他人可读执行(5)

六、进程与服务管理——让程序跑起来

命令作用
ps aux查看所有运行中的进程
ps -ef | grep nginx查找特定进程
top实时监控CPU/内存占用(按q退出)
htoptop的增强版,界面更友好
kill PID终止指定进程
kill -9 PID强制终止(慎用!) 
systemctl start nginx启动服务
systemctl stop nginx停止服务
systemctl restart nginx重启服务
systemctl status nginx查看服务状态
systemctl enable nginx设置开机自启
systemctl disable nginx取消开机自启

💡 能用 systemctl 就别手动 kill,优雅重启比暴力终止更专业。

七、网络排查——服务通不通?

云服务器的网络连通性是生命线。

命令作用
ip addr查看IP地址和网卡信息
ping 8.8.8.8测试网络连通性
ss -tunlp查看所有监听端口(推荐,比netstat新)
netstat -tunlp查看所有监听端口(老命令)
curl ifconfig.me查看本机公网IP
curl -I http://127.0.0.1测试HTTP服务是否正常
wget http://example.com/file.zip下载文件
traceroute www.baidu.com追踪路由路径

实战场景:

bash

# 看哪些端口在监听
ss -tunlp

# 检查nginx是否在80端口正常响应
curl -I http://localhost

# 测试外网连通性
ping -c 4 8.8.8.8

八、常用组合技——效率翻倍

组合作用
command &让命令在后台运行
command1 | command2管道,把前一个命令的输出传给后一个
grep -rl "TODO" . | xargs wc -l找到所有含"TODO"的文件并统计行数
history查看命令历史
clear清屏

最后说两句

Linux命令这东西,不用背,多用自然就熟了。把这篇文章收藏起来,遇到问题时翻一翻,用多了自然就刻在脑子里了。

另外几点建议:

  1. 不确定的命令先用 --help 看一下,比如 ls --help

  2. 高危命令(rm -rf)一定要再三确认,尤其是在生产环境

  3. 多练 —— 可以自己租一台廉价云服务器或者用虚拟机,随便折腾不心疼

如果觉得有用,点赞 + 收藏 + 转发,让更多小伙伴少走弯路!有其他好用的命令也欢迎在评论区补充~

更多推荐