目录
1 Linux 目录树、绝对路径与相对路径
2 ls pwd cd 目录基础命令
pwd:打印当前工作目录
ls:列出目录内容
cd:切换目录 change directory
3 touch mkdir rmdir rm 文件目录增删
touch:创建普通空文件;修改文件时间属性
mkdir 创建目录
rmdir 删除空目录
rm 删除文件 / 目录(高频,谨慎操作)
4 man 帮助手册
5 cp mv 复制、移动与重命名
cp copy 复制
mv move 移动 / 重命名
6 文件内容查看 cat more less head tail
cat:一次性全部输出文件内容
more:分页查看,只可以向下翻页
less:更强大分页工具,推荐优先用 less
head:看文件开头内容
tail:看文件末尾,日志查看神器
7 date cal 时间与日历
date 时间
cal 日历
8 find which whereis alias
find 在目录树中搜索文件
which:查找可执行命令所在路径
whereis:查找命令、手册、源文件位置
alias 设置命令别名
9 grep 文本过滤搜索
10 压缩解压 zip /unzip 、tar
zip/unzip
tar(最常用,打包 + 压缩)
11 bc 、uname
bc:终端计算器,支持浮点运算
uname:查看系统内核信息
12 终端高频快捷键
13 本篇小结
1 Linux 目录树、绝对路径与相对路径
Linux 所有文件从根目录/开始,整棵倒置的目录树。
- 绝对路径:以
/开头,从根开始完整路径。不受当前所在目录影响,配置文件大量使用绝对路径。示例:/home/whb/test - 相对路径:不以
/开头,相对于当前工作目录定位文件。命令行操作最常用。
特殊目录符号:
.当前目录..上一级父目录~当前登录用户家目录:普通用户/home/用户名;root 用户/root-上一次所在目录
系统核心目录简单介绍:
/bin:普通用户可执行基础命令/sbin:超级管理员 root 特权命令/home:普通用户家目录存放位置/root:root 超级用户家目录/etc:系统各类配置文件/dev:硬件抽象设备文件/var:经常变化的数据(日志、缓存)/tmp:临时文件目录
2 ls pwd cd 目录基础命令
pwd:打印当前工作目录
语法:pwd,无参数,输出当前所在位置的绝对路径。
[whb@bite-alicloud test]$ pwd /home/whb/testls:列出目录内容
语法:ls [选项] [目录/文件名]常用选项:
表格
| 选项 | 作用 |
|---|---|
| -a | 显示全部,包含.开头隐藏文件 |
| -l | 详细信息展示,权限、所有者、大小时间 |
| -d | 把目录本身当作文件展示,不列出内部内容 |
| -R | 递归遍历所有子目录 |
| -t | 按修改时间排序 |
| -F | 标记文件类型,/代表目录、*可执行程序 |
| -n | UID、GID 数字代替用户名 |
示例:
ls #列出当前目录 ls -a #看隐藏文件 ls -l #详细信息 ls -al #组合选项 ls -d /etc #只看etc目录本身信息cd:切换目录 change directory
语法:cd 路径
cd .. #回到上级目录 cd ~ #回到自己家目录 cd /home/whb #绝对路径跳转 cd ../temp #相对路径跳转 cd - #回到上一次访问的目录 cd #不带参数,直接回家目录3 touch mkdir rmdir rm 文件目录增删
touch:创建普通空文件;修改文件时间属性
语法:touch [选项] 文件名
-a修改访问时间 access-m修改修改时间 modify
文件不存在就新建空文件;文件已经存在,更新文件时间戳。
touch test.txt touch -a test.txt可以使用stat 文件名查看文件的三种时间:Access、Modify、Change。
mkdir 创建目录
语法:mkdir [选项] 目录名
-p递归创建多级目录,中间不存在目录自动生成
mkdir dir1 mkdir -p a/b/c/d #一次性创建多层嵌套目录查看树状目录:
tree,没有安装:yum install -y tree
rmdir 删除空目录
只能够删除完全空的目录,如果目录里面有文件,无法删除。语法:
rmdir [-p] 目录
-p删除空目录之后,如果父目录也变空,一并向上删除。
rmdir dir1 rmdir -p a/b/c/drm 删除文件 / 目录(高频,谨慎操作)
语法:rm [选项] 文件/目录
表格
| 选项 | 说明 |
|---|---|
| -f | 强制删除,只读文件也直接删,不提示 |
| -i | 删除前交互式询问确认 |
| -r / -R | 递归,删除目录以及目录下全部内容 |
⚠高危警告:不要执行
rm -rf /,会把系统根目录全部摧毁。
rm file.txt #删除普通文件 rm -r dir #删除非空目录 rm -ri dir #删除每一步询问 rm -rf dir #强制递归删除,无确认提示4 man 帮助手册
Linux 命令参数繁多,不需要全部死记硬背,man 查看系统联机手册。 语法:man [章节号] 命令/函数
man 手册分为多个章节:
- 普通 shell 命令
- 系统调用(内核提供接口,open read 等系统 API)
- C/C++ 库函数(printf、strcpy)
- 设备特殊文件
- 配置文件格式说明
- 系统管理员 root 命令
man ls #查看ls命令,默认从第一章搜索 man 2 open #看系统调用open man 3 printf #看C库函数printf man man #查看man自己的帮助 q #退出man页面5 cp mv 复制、移动与重命名
cp copy 复制
语法:cp [选项] 源 目标
表格
| 选项 | |
|---|---|
| -i | 覆盖前询问 |
| -r / -R | 递归复制目录 |
| -f | 强制覆盖不提示 |
cp a.txt b.txt #复制文件 cp -r dir1 dir2 #复制整个目录 cp *.txt dir2 #通配符,把所有txt复制到dir2 cp -i a.txt b.txt #覆盖提示mv move 移动 / 重命名
语法:mv [选项] 源 目标
- 如果目标是已经存在目录:把源移动进这个目录;
- 如果目标不存在:执行重命名。 选项:
-i:覆盖前询问-f:强制覆盖不提示
mv old.txt new.txt #重命名 mv file.txt ~/test/ #移动文件到目标目录 mv -i a.txt b.txt6 文件内容查看 cat more less head tail
cat:一次性全部输出文件内容
语法:cat [选项] 文件
-n:所有行打印行号-b:仅非空行打印行号-s:多个连续空行压缩为一行
适合小文件;大文件刷屏,不要 cat 大日志。
cat test.txt cat -n test.txtmore:分页查看,只可以向下翻页
more test.txt #回车向下一行,空格向下一页,q退出less:更强大分页工具,推荐优先用 less
可以向上、向下翻页,支持文本搜索。
less test.txt -N #显示行号 /字符串 #向下搜索 ?字符串 #向上搜索 q #退出head:看文件开头内容
默认输出前 10 行
head test.txt head -5 test.txt #只看前5行tail:看文件末尾,日志查看神器
默认输出末尾 10 行
tail test.txt tail -20 test.txt #末尾20行 tail -f test.log #实时追踪文件新增内容,看动态日志组合小技巧,管道
|,查看文件 180‑200 行:
head -200 test.txt | tail -207 date cal 时间与日历
date 时间
date #打印当前系统时间 date +%Y/%m/%d-%H:%M:%S #格式化输出 date +%s #输出Unix时间戳(1970‑01‑01 UTC到现在秒数) date -d @1700000000 #时间戳转回可读时间修改系统时间需要 root 权限:
date -s "2025‑01‑01 12:00:00"
cal 日历
cal #当月日历 cal 2025 #整年日历 cal -3 #展示上一个月、本月、下一个月8 find which whereis alias
find 在目录树中搜索文件
find ~ -name "test.c" #在家目录下,按文件名搜索test.cwhich:查找可执行命令所在路径
which ls which pwdwhereis:查找命令、手册、源文件位置
whereis lsalias 设置命令别名
alias ll='ls -l' #设置别名ll代表ls -l alias #查看当前全部别名9 grep 文本过滤搜索
在文件中搜索匹配字符串,输出匹配行。 语法:grep [选项] "关键词" 文件名
表格
| 选项 | 功能 |
|---|---|
| -i | 忽略大小写 |
| -n | 输出匹配内容同时打印行号 |
| -v | 反向匹配,输出不包含关键词的行 |
grep "hello" test.txt grep -i "hello" test.txt grep -vn "hello" test.txt10 压缩解压 zip /unzip 、tar
zip/unzip
zip -r test.zip testdir/ #压缩目录,-r递归 unzip test.zip -d /tmp #解压到/tmp目录tar(最常用,打包 + 压缩)
tar 参数:
-c创建压缩包-x解包-t查看包内文件列表-zgzip 压缩格式.tar.gz-jbzip2 压缩.tar.bz2-v显示过程(调试用,生产环境建议去掉)-f指定包文件名,f 参数必须放在参数最后!-C指定解压目标目录
# 打包压缩 tar -zcvf test.tar.gz dir/ # 查看包内容 tar -ztvf test.tar.gz # 解压 tar -zxvf test.tar.gz -C /tmp11 bc 、uname
bc:终端计算器,支持浮点运算
bcuname:查看系统内核信息
uname -a #输出全部内核、硬件信息 uname -r #只打印内核版本号12 终端高频快捷键
Tab:命令、文件名自动补全,写命令必用。Ctrl + C:终止当前正在运行的程序。Ctrl + D:EOF 结束输入;退出终端,等价 exit。history:查看历史敲过的全部命令。
13 本篇小结
- Linux 文件系统以
/根目录起点,分清绝对路径、相对路径,熟悉~ .. . -特殊路径符号。 ls pwd cd是目录三大基础命令;touch mkdir rmdir rm管理文件目录,rm -rf谨慎使用。man帮助手册,不用死记全部命令参数。- 文件复制
cp、移动重命名mv。 - 文件查看:小文件 cat;大文件优先 less;head/tail 查看首尾,tail‑f 追踪日志。
grep文本过滤;find文件搜索;tar是最主流打包压缩工具。- 善用 Tab 补全,
Ctrl+C终止程序。