按场景分类,优先记最常用的,附带最简用法,方便复制练习
说明:默认是 bash,大部分在 zsh 也通用
一、文件目录(用得最多)
pwd # 查看当前所在路径
ls # 列出目录
ls -al # 详细列表,含隐藏文件
cd /path # 切换目录;cd ~ 回家目录,cd - 返回上一次目录
mkdir test # 创建文件夹;mkdir -p a/b/c 递归建多层
rm file.txt # 删除文件;rm -rf dir 强制递归删目录(谨慎!)
cp src dst # 复制;cp -r dir1 dir2 复制文件夹
mv old new # 移动/重命名
touch file.txt # 创建空文件
ln -s 源 软链接名 # 创建软链接
二、查看文件内容
cat file.txt # 一次性输出全部内容
less file.txt # 分页查看(上下翻,q退出)
head -n 10 file.txt # 看前10行
tail -n 10 file.txt # 看最后10行
tail -f file.txt # 实时跟踪日志(看服务日志神器)

三、文本处理(排查日志、过滤)
grep "keyword" file.txt # 过滤包含关键词的行
grep -i "abc" file # 忽略大小写
grep -r "abc" ./ # 递归在目录下搜索
sed # 流编辑(替换、删除行)
# 示例:sed 's/old/new/g' file 替换文本,不改动原文件;加 -i 直接修改原文件
awk '{print $1}' file # 按列截取,处理表格类文本
sort # 排序
uniq # 去重(一般配合sort)
wc -l file # 统计行数
四、进程 & 端口(排查服务、端口占用)
ps aux # 查看所有进程
ps aux | grep java # 过滤进程
top # 实时资源监控(q退出)
htop # 更好看的top(需要安装)
kill 1234 # 结束进程
kill -9 1234 # 强制杀进程
netstat -tulpn # 查看监听端口(很多系统换成ss)
ss -tulpn # 推荐,查看端口占用
五、系统信息
uname -a # 内核信息
df -h # 磁盘分区使用率
du -sh * # 查看当前目录下各文件/文件夹大小
free -h # 内存使用
whoami # 当前用户
hostname # 主机名
date # 时间
六、权限相关
chmod 755 script.sh # 修改权限
chown user:group file # 修改属主
sudo cmd # 以root执行
七、压缩解压
tar -zcvf out.tar.gz dir/ # 打包压缩
tar -zxvf out.tar.gz # 解压
zip out.zip file # zip压缩
unzip out.zip # zip解压

八、网络
ping baidu.com
curl url # 请求接口、下载内容
wget url # 下载文件
ip a # 看网卡IP(替代ifconfig)
九、管道 & 重定向(shell 精髓)
# | 管道:把前面输出传给后面
ls -al | grep txt
# > 覆盖写入,>> 追加
echo "hello" > test.txt
echo "world" >> test.txt
# 2>&1 把错误流合并到标准输出,日志脚本高频
cmd > log.txt 2>&1
十、其他高频
history # 历史命令
!123 # 执行历史里编号123的命令
which java # 查看命令路径
whereis java
env # 环境变量
export KEY=val # 设置临时环境变量
学习优先级建议
先掌握:
cd ls pwd mkdir rm cp mv touch cat less tail -f日志排查必备:
grep | awk sed wc服务排错:
ps top ss kill脚本必懂:管道、
> >> 2>&1、变量、for 循环
本文原创作者:易君召,详见:https://www.yijunzhao.cc/about,转载请注明出处。
原文链接
欢迎访问