一、目录切换与浏览命令 cd、ls
cd 切换工作目录
cd 目标路径
cd .. # 返回上一级目录
cd ~ # 回到当前用户家目录
cd / # 切换到根目录
cd – # 在最近两个目录之间来回切换
ls 列出目录内容
查看目录下的文件、文件夹列表
- ls -l:长格式显示,权限、所有者、大小、时间
- ls -a:显示全部文件,包含隐藏文件(以.开头)
- ls -lh:人性化显示大小,KB/MB 单位
- ls -ld /etc:查看目录本身属性,不看目录里面内容
二、创建删除目录文件 mkdir、touch、rm
mkdir 创建目录
mkdir testdir # 创建单个目录
mkdir -p dir1/dir2/dir3 # -p递归创建多级嵌套目录
touch 创建空文件
touch file.txt # 创建空白文件;文件已存在时更新文件时间戳
rm 删除命令
⚠️风险命令,删除后很难恢复
rm file.txt # 删除文件
rm -r dirname # -r递归删除目录以及目录内全部内容
rm -f file.txt # -f强制删除,不弹出确认提示
rm -rf dir # 强制递归删除目录,工作环境谨慎使用
tree 树形展示目录结构
需要安装 tree 工具,以树状层级打印目录和文件
tree # 当前目录树形输出
tree -L 2 # -L 数字,只展示2层目录,避免输出过多
三、磁盘空间查看 du -sh
du:统计文件 / 目录占用磁盘空间大小
du -sh *
- -s:只显示总汇总大小,不输出子文件明细
- -h:human 人性化,KB、MB、GB 可读单位
du -sh *:查看当前目录下每一个文件、目录占用磁盘大小。
四、内存资源查看 free
查看系统内存、交换分区 swap 使用情况
free -h
- -h人性化单位展示,展示总内存、已用、空闲、缓存、swap 交换空间。
五、find 文件查找命令
find 是 Linux 里强大的文件检索工具,可以按照时间、文件名、文件类型、文件大小等条件搜索文件。
时间查找参数
- -mtime:按照修改时间查找(文件内容发生改动)
- -atime:按照访问时间查找(文件被读取打开)
- -ctime:按照状态更改时间查找(文件权限、属性修改)
时间符号规则:
- -n:n 天以内
- +n:n 天以外
示例:
# 在/root下查找修改时间2天以内的文件
find /root -mtime -2
# 在root下查找2天以内修改过的目录,-type d代表目录;-type f代表普通文件
find /root -type d -mtime -2
文件名匹配
- -name:匹配文件名,区分大小写
- -iname:匹配文件名,不区分大小写
其他常用选项
- -type:指定文件类型,d目录、f普通文件
- -size:按文件大小查找
- -print:打印输出找到的结果
- -exec:对搜索出来的文件执行后续命令
补充:which命令,可以查找系统命令本身存放的路径。
六、文件操作命令 cp、mv
- -r 递归,复制目录的时候必须加 – r,复制整个文件夹。
# 移动文件到别的路径,同时改名
mv 当前路径/文件 /目标路径/新名字
# 在当前目录直接重命名
mv 旧名字 新名字
七、文本查看 cat、less
- cat -n 文件名:输出内容,显示全部行号(包含空行)
- cat -b 文件名:显示行号,跳过空行,空行不编号
less filename
交互快捷键:
- 空格:向下翻页
- b:向上翻页
- /关键词:向下搜索文本
- q:退出 less 查看
小提示:不要用 cat 读取几十 GB 的大日志文件,优先 less。
八、sort 文本排序命令
sort 对文本行进行排序,默认按字母顺序。
表格
| -r | 倒序排序 |
| -n | 按数字大小排序,而不是字符 |
| -u | 去重,相同行只保留一份 |
| -o | 将排序结果输出保存到文件 |
| -k | 指定第几列进行排序 |
| -t | 指定分隔符,比如冒号、空格 |
九、uniq 去重统计命令
⚠️注意:uniq只能识别相邻重复行,所以一般搭配 sort 先排序,管道|传给 uniq。
表格
| -c | 统计每行重复出现的次数 |
| -u | 只显示仅出现一次的行(不重复行) |
| -d | 只显示重复的行 |
| -i | 忽略大小写进行比对 |
经典组合示例:
# 排序并去重
sort -u filename
# 先排序,再只显示不重复的行
sort filename | uniq -u
# 排序后统计每行出现多少次
sort filename | uniq -c
# 只显示重复的行
sort filename | uniq -d
# 显示重复行+重复次数
sort filename | uniq -d -c
十、diff 文件对比
diff命令用来对比两个文本文件之间的差异。
- 输出符号:<代表第一个文件内容,>代表第二个文件内容
- a新增,d删除,c修改
- 常用 -u 参数,统一格式输出,可读性更好,和 git 看到的差异格式一致。
学习小结
这些都是运维日常高频基础命令,可以简单划分功能:



