1. 指令说明
参数 | 作用 |
---|
-x | extract,解包 |
-z | 通过 gzip 解压(.tar.gz 、.tgz ) |
-v | verbose,显示过程 |
-f | file,后面紧跟压缩包文件名 |
2. 什么时候用z
参数
场景 | 是否加 -z | 结果 |
---|
.tar.gz / .tgz | ✅ 必须加 -z | 正常解压 |
.tar.gz / .tgz | ❌ 没加 -z | 报错 “gzip: stdin: not in gzip format” |
纯 .tar (未压缩) | ✅ 误加 -z | 报错 “gzip: stdin: not in gzip format” |
纯 .tar | ❌ 不加 -z | 正常解压 |

3. 怎么快速删除文件夹里面 从一个压缩包里面解压出来的全部文件?
tar -tzf xxx.tar.gz
tar -tzf xxx.tar.gz | xargs sudo rm -rf
tar -tzf 把文件名逐行输出。
xargs sudo rm -rf 把每行当成参数直接强制删除。
4. -和–的区别
- 单 -:短选项
每个字母都是一个独立开关,可以 连写
ls -la 相当于 ls -l -a - 双 --:长选项
可读性高,单词级:
git --version、tar --extract --verbose --file=a.tar
分隔符用法(更关键):
当文件名/参数本身以 - 开头时,防止被当成选项。
例:在当前目录下有一个叫 -file.txt 的文件,要把它打包:
tar -- -file.txt ✔️ 正确
tar -file.txt ❌ 会报 “invalid option”
- 记忆口诀
一个 - 后面是 字母串,
两个 – 后面是 完整单词 或者 “后面都是普通参数”。