linux常用命令
文件与目录操作
| 指令 | 说明 |
|---|---|
ls |
列出目录内容(-l 详情、-a 含隐藏文件) |
cd |
切换目录 |
pwd |
显示当前工作目录 |
mkdir |
创建目录(-p 递归创建) |
rmdir |
删除空目录 |
rm |
删除文件或目录(-r 递归、-f 强制) |
cp |
复制文件或目录(-r 递归) |
mv |
移动或重命名文件 |
touch |
创建空文件或更新时间戳 |
ln |
创建链接(-s 软链接) |
find |
查找文件,如 find . -name '*.php' -mmin -30 |
tree |
树状显示目录结构 |
chmod |
修改文件权限,如 chmod 755 abc.sh 赋执行权限 |
scp |
跨机器拷贝文件,如 scp filename user@ip:remote_dir |
rz / rz -be |
通过 lrzsz 上传文件(大文件加 -be) |
nohup filename & |
后台运行程序,退出终端不中断 |
tar -xzvf abc.tar.gz |
解压 tar.gz 包到当前目录 |
文件内容查看与日志搜索
| 指令 | 说明 |
|---|---|
cat |
查看全部文件内容 |
less / more |
分页查看文件 |
head |
查看文件头部(默认前 10 行) |
tail |
查看文件尾部(-f 实时跟踪) |
tail -f catalina.out | grep -ni "keyword" |
实时跟踪日志并筛选关键字,测试排查问题最常用 |
vi catalina.out 后 /ERROR |
在日志文件中查找错误,n 跳转下一个匹配 |
tail -n 1000 catalina.out > errortest.log |
导出最后 1000 行日志用于分析 |
grep filename . -rn |
在当前目录及子目录递归查找包含关键字的文件 |
grep |
文本搜索(支持正则) |
wc |
统计行数、字数、字节数 |
sort |
排序 |
uniq |
去重 |
diff |
比较文件差异 |
权限与用户管理
| 指令 | 说明 |
|---|---|
chmod |
修改文件权限(如 755、u+x) |
chown |
修改文件所有者 |
chgrp |
修改文件所属组 |
useradd / userdel |
添加/删除用户 |
passwd |
修改密码 |
su / sudo |
切换用户 / 提权执行 |
whoami |
显示当前用户 |
id |
显示用户 UID/GID |
进程与系统管理
| 指令 | 说明 |
|---|---|
ps |
查看进程(aux、-ef),如 ps aux | grep tomcat |
top / htop |
实时监控进程,按 1 可展开每个核心详情 |
kill / killall |
终止进程,如 kill -9 $pid 强制结束 |
jobs / bg / fg |
后台任务管理 |
nohup |
后台运行且不受挂断影响 |
systemctl |
管理系统服务 |
service |
服务管理(旧版) |
crontab |
定时任务 |
uname |
查看系统信息 |
uptime |
系统运行时间与负载(1/5/15 分钟平均负载) |
free |
查看内存使用 |
df / du |
磁盘空间 / 目录占用 |
CPU 与性能监控(测试重点)
| 指令 | 说明 |
|---|---|
atop |
交互式性能监控,覆盖 CPU、内存、磁盘 I/O、网络,支持历史回溯分析 |
mpstat -P ALL 1 |
逐核查看 CPU 利用率,定位热点核心 |
vmstat 1 |
综合查看进程、内存、CPU、块 I/O,关注 si/so、bi/bo |
sar -u 1 3 |
查看 CPU 历史与实时使用率(需安装 sysstat) |
top / htop |
实时查看进程资源占用 |
uptime |
查看系统平均负载,判断整体压力 |
网络相关
| 指令 | 说明 |
|---|---|
ping |
测试网络连通性 |
ifconfig / ip |
查看/配置网络接口 |
netstat / ss |
查看网络连接与端口,如 netstat -tunlp | grep 8080 |
lsof -i :8080 |
查看特定端口的占用情况 |
curl / wget |
下载/请求 URL |
ssh |
远程登录 |
scp |
远程复制文件 |
rsync |
同步文件 |
traceroute / mtr |
路由跟踪 |
nslookup / dig |
DNS 查询 |
网络模拟与故障注入(测试重点)
| 指令 | 说明 |
|---|---|
tc qdisc add dev eth0 root netem delay 100ms |
为网卡添加固定延迟,模拟网络延迟场景 |
tc qdisc add dev eth0 root netem loss 5% |
模拟丢包,验证系统在弱网下的表现 |
tc qdisc add dev eth0 root netem delay 100ms 20ms |
添加延迟+抖动(100ms 基础延迟,±20ms 随机抖动) |
tc qdisc add dev eth0 root netem corrupt 1% |
模拟数据包损坏 |
tc qdisc add dev eth0 root netem duplicate 1% |
模拟数据包重复 |
tc qdisc show dev eth0 |
查看当前已配置的 tc 规则 |
tc qdisc del dev eth0 root |
清除所有 tc 规则(测试完毕后恢复) |
压缩与打包
| 指令 | 说明 |
|---|---|
tar |
打包/解包(-czvf 打包、-xzvf 解包) |
gzip / gunzip |
gz 压缩/解压 |
zip / unzip |
zip 压缩/解压 |
bzip2 |
bz2 压缩 |
磁盘与文件系统
| 指令 | 说明 |
|---|---|
mount / umount |
挂载/卸载 |
fdisk / parted |
磁盘分区 |
mkfs |
格式化文件系统 |
fsck |
文件系统检查 |
lsblk |
查看块设备 |
文本处理
| 指令 | 说明 |
|---|---|
sed |
流编辑器(替换、删除) |
awk |
文本分析工具 |
cut |
按列截取 |
tr |
字符替换/删除 |
paste |
合并文件列 |
tee |
输出同时写文件与屏幕 |
其他常用
| 指令 | 说明 |
|---|---|
man / info |
查看手册 |
echo |
输出文本 |
history |
命令历史 |
alias |
设置别名 |
clear |
清屏 |
date / cal |
日期 / 日历 |
shutdown / reboot |
关机 / 重启 |
which / whereis |
查找命令路径 |
env / export |
环境变量 |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 moshiqiqian!
评论


