云计算基础——Linux2
一、目录文件空间统计(du 命令)
核心用于统计目录或文件占用的磁盘空间,常用于排查磁盘满、清理冗余文件场景。
| 命令选项 | 功能描述 | 适用场景 | 示例 |
|---|---|---|---|
du -ah |
统计目标目录的总磁盘空间,同时显示所有递归子目录及文件的单独占用空间(-a 显示文件,-h 友好显示单位如 M/G) |
需详细查看目录内各文件 / 子目录大小 | du -ah /opt(查看 /opt 目录及所有子文件 / 目录的大小) |
du -sh |
仅统计目标目录的总磁盘空间(-s 汇总结果,-h 友好显示) |
快速了解目录整体占用大小 | du -sh /home(查看 /home 目录总占用空间) |
du -sh * |
统计当前目录下所有文件 / 目录的单独总大小 | 排查当前目录下哪个子目录 / 文件占用过大 | du -sh *(显示当前目录下各项目的大小,方便定位大文件) |
二、链接文件创建(ln 命令)
用于创建文件的链接(类似 Windows 快捷方式或副本),分为软链接和硬链接,适用场景不同。
核心语法与对比
| 链接类型 | 语法格式 | 关键特性 | 适用场景 |
|---|---|---|---|
| 软链接 | ln -s 源文件路径 链接名 |
- 支持跨分区创建- 源文件删除后,链接失效(显示 “断裂”)- 支持给目录创建链接- 链接文件大小仅等于链接名长度 | 日常快捷访问(如常用目录 / 文件) |
| 硬链接 | ln 源文件路径 链接名 |
- 不支持跨分区- 源文件删除后,链接仍可正常访问(本质是同一文件的不同入口)- 不支持给目录创建链接- 链接文件大小与源文件完全相同 | 重要文件备份(防止误删) |
示例
软链接:ln -s /opt/test.txt /tmp/test_link(在 /tmp 目录创建 /opt/test.txt 的快捷方式)
三. 查找命令(which)
功能:查找外部命令路径(依赖 $PATH 环境变量)。
示例:which ls(输出 /usr/bin/ls),内部命令无结果(如 which help)。
四. 复制文件 / 目录(cp 命令)
用于复制文件或目录,核心选项针对目录复制和属性保留。
| 命令选项 | 功能描述 | 示例 |
|---|---|---|
-r |
递归复制目录(必选,否则无法复制目录) | cp -r /home/docs /backup(将 /home/docs 目录完整复制到 /backup) |
-p |
保留源文件的属性(权限、修改时间等) | cp -p /etc/profile /tmp(复制 profile 文件并保留其原有权限) |
-a |
等同于 -r -p(递归 + 保留属性,推荐复制目录用) |
cp -a /var/log /data/log_bak(完整备份日志目录,保留权限和时间) |
-i |
覆盖目标文件前提醒(防止误覆盖,默认开启) | cp -i test.txt /home(若 /home 已有 test.txt,会提示是否覆盖) |
| 备份技巧 | 快速生成文件备份(后缀加.bak) | cp -v test.sh test.sh.bak(生成 test.sh 的备份文件,-v 显示复制过程) |
五. 移动 / 重命名(mv 命令)
同一目录下执行是 “重命名”,跨目录执行是 “移动”,操作简洁且高效。
| 功能类型 | 示例 |
|---|---|
| 重命名 | mv old.txt new.txt(当前目录下将 old.txt 改名为 new.txt) |
| 移动文件 | mv /tmp/report.pdf /home/docs(将 /tmp 的 report.pdf 移动到 /home/docs) |
| 移动目录 | mv /opt/temp /home(将 /opt/temp 目录整体移动到 /home) |
| 覆盖提醒 | mv -i /data/file.txt /home(若 /home 已有 file.txt,提示是否覆盖) |
六. 删除文件 / 目录(rm 命令)
用于删除文件或目录,rm -rf 为高危命令(强制删除且无法恢复),需谨慎使用。
| 命令选项 | 功能描述 | 示例 |
|---|---|---|
-r |
递归删除目录(删除目录必选) | rm -r /tmp/old_dir(删除 /tmp 下的 old_dir 目录及所有内容) |
-f |
强制删除(不弹出提醒,慎用) | rm -f /tmp/temp.txt(强制删除 temp.txt,无任何提示) |
-i |
删除前提醒(默认开启,安全选项) | rm -i important.txt(删除前提示 “是否删除 important.txt”) |
| 空目录删除 | rmdir 空目录名(仅能删除空目录,比rm -r更安全) |
rmdir /opt/empty_dir(仅当 empty_dir 为空时才能删除) |
七、查找命令(find)
核心功能:按 “目录范围 + 条件匹配” 查找文件 / 目录,输出结果为文件绝对路径,是 Linux 中最灵活的查找工具。
基本语法
find 查找目录范围 匹配条件 [额外操作]
常用匹配条件
| 条件参数 | 功能描述 | 示例 |
|---|---|---|
-name |
按文件名查找(支持通配符 */?) |
find /etc -name "resol*.conf"(在 /etc 目录找 “resol” 开头的.conf 文件) |
-size |
按文件大小查找(单位:k/M/G,+大于,-小于,无符号等于) |
find /data -size +100M(找 /data 目录下大于 100M 的文件)find /tmp -size 5k(找 /tmp 目录下等于 5k 的文件) |
-type |
按文件类型查找(d目录,f普通文件,l软链接) |
find /boot -type d(找 /boot 目录下所有子目录)find /home -type f(找 /home 目录下所有普通文件) |
-user |
按文件所有者(属主)查找 | find /home -user zhangsan(找 /home 目录下属主为 zhangsan 的文件) |
-mtime |
按修改时间查找(单位:天,+n 天前,-n 天内) |
find /var/log -mtime -7(找 /var/log 目录下 7 天内修改过的日志文件) |
多条件组合与结果操作
并且(-a):find /mnt -user root -a -size +5M(找 /mnt 目录下属主为 root 且大于 5M 的文件)
或者(-o):find /mnt -user root -o -size +5M(找 /mnt 目录下属主为 root 或大于 5M 的文件)
反向(-not):find /mnt -not -user root(找 /mnt 目录下非 root 属主的文件)
对结果执行命令(-exec):find /var/log -name "*.log" -exec rm {} \;(删除 /var/log 下所有.log 文件,{}代表查找结果,\;结束命令)
八、文件内容查看(cat/more/less/head/tail)
用于查看文本文件内容,不同命令适用于不同文件长度和操作需求。
| 命令 | 核心功能与特点 | 常用操作 / 选项 |
|---|---|---|
cat |
一次性显示整个文件内容(适合短文件) | cat /etc/hosts(直接查看 hosts 文件全部内容) |
more |
全屏分页显示(仅支持向下翻页,不支持向上) | 交互操作:- Enter:向下逐行滚屏- 空格:向下翻一屏- b:向上翻一屏- q:退出查看 |
less |
功能比more强(支持上下翻页、内容查找) |
交互操作:- PageUp/PageDown:上下翻页- /关键词:向下查找关键词- n:找下一个关键词,N:找上一个关键词- q:退出 |
head |
查看文件开头内容(默认前 10 行) | head /var/log/syslog(查看 syslog 开头 10 行)head -n 20 /etc/profile(查看 profile 开头 20 行) |
tail |
查看文件结尾内容(默认后 10 行,支持实时监控) | tail /var/log/messages(查看 messages 结尾 10 行)tail -n 15 /opt/data.txt(查看 data.txt 结尾 15 行)tail -f /var/log/nginx/access.log(实时监控 nginx 访问日志的新增内容) |
九、内容统计命令(wc)
用于统计文本文件的行数、单词数、字节数,也可结合其他命令统计目录文件数量等。
| 命令选项 | 功能描述 | 示例 |
|---|---|---|
-l |
统计行数(最常用) | wc -l /etc/passwd(统计 passwd 文件的行数,即系统用户数)`ls /etc |
-w |
统计单词数量(以空格分隔) | wc -w test.md(统计 test.md 文件中的单词总数) |
-c |
统计字节数(含空格和特殊字符) | wc -c /tmp/note.txt(统计 note.txt 文件的字节大小) |
| 扩展场景 | 统计网络连接数 | `netstat -tuln |
十、vi 文本编辑器(常用操作)
Linux 默认文本编辑器,需掌握 “三种模式切换” 和核心操作,避免编辑后无法保存 / 退出。
操作流程
-
进入编辑器:
vi 文件名(如vi /opt/test.txt,若文件不存在则创建) -
初始模式:进入后默认是命令模式,仅支持阅读、翻页(按
j下滚、k上滚),无法编辑 -
进入编辑:按
i键(insert),底部显示 “-- INSERT --”,进入输入模式,可正常编辑文本 -
保存退出:
先按 Esc 键回到命令模式(底部 “-- INSERT --” 消失)
按 Shift + :(冒号),进入末行模式(底部出现冒号 “:”)
输入 wq 并回车(w= 保存,q= 退出),完成保存并关闭编辑器
不保存退出:若编辑错误不想保存,回到命令模式后,末行模式输入 q! 并回车(! 强制退出)
更多推荐


所有评论(0)