Linux 压缩某个文件夹(文件夹打包)

tar -zcvf /home/xahot.tar.gz /xahot
tar -zcvf 打包后生成的文件名全路径 要打包的目录
例子:把/xahot文件夹打包后生成一个/home/xahot.tar.gz的文件。
zip 压缩方法:

压缩当前的文件夹 zip -r ./xahot.zip ./* -r表示递归
zip [参数] [打包后的文件名] [打包的目录路径]
解压 unzip xahot.zip 不解释
linux zip命令的基本用法是:

linux zip命令参数列表:

-a 将文件转成ASCII模式
-F 尝试修复损坏的压缩文件
-h 显示帮助界面
-m 将文件压缩之后,删除源文件

-n 特定字符串 不压缩具有特定字尾字符串的文件
-o 将压缩文件内的所有文件的最新变动时间设为压缩时候的时间
-q 安静模式,在压缩的时候不显示指令的执行过程
-r 将指定的目录下的所有子目录以及文件一起处理
-S 包含系统文件和隐含文件(S是大写)
-t 日期 把压缩文件的最后修改日期设为指定的日期,日期格式为mmddyyyy

举例:

将/home/wwwroot/xahot/ 这个目录下所有文件和文件夹打包为当前目录下的xahot.zip

zip –q –r xahot.zip /home/wwwroot/xahot

上面的命令操作是将绝对地址的文件及文件夹进行压缩.以下给出压缩相对路径目录

比如目前在Bliux这个目录下,执行以下操作可以达到以上同样的效果.

zip –q –r xahot.zip xahot

比如现在我的xahot目录下,我操作的zip压缩命令是

zip –q –r xahot.zip *

以上是在安静模式下进行的,而且包含系统文件和隐含文件
//
unzip语 法:

unzip [-cflptuvz][-agCjLMnoqsVX][-P<密码>][.zip文件][文件][-d<目 录>][-x<文件>] 或 unzip [-Z]

补充说明:unzip为.zip压缩文件的解压缩程序。

unzip参 数:
-c 将解压缩的结果显示到屏幕上,并对字符做适当的转换。
-f 更新现有的文件。
-l 显示压缩文件内所包含的文件。
-p 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换。
-t 检查压缩文件是否正确。
-u 与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其他文件解压缩到目录中。
-v 执行是时显示详细的信息。
-z 仅显示压缩文件的备注文字。
-a 对文本文件进行必要的字符转换。
-b 不要对文本文件进行字符转换。
-C 压缩文件中的文件名称区分大小写。
-j 不处理压缩文件中原有的目录路径。
-L 将压缩文件中的全部文件名改为小写。
-M 将输出结果送到more程序处理。
-n 解压缩时不要覆盖原有的文件。
-o 不必先询问用户,unzip执行后覆盖原有文件。
-P<密码> 使用zip的密码选项。
-q 执行时不显示任何信息。
-s 将文件名中的空白字符转换为底线字符。
-V 保留VMS的文件版本信息。
-X 解压缩时同时回存文件原来的UID/GID。
[.zip文件] 指定.zip压缩文件。
[文件] 指定要处理.zip压缩文件中的哪些文件。
-d<目录> 指定文件解压缩后所要存储的目录。
-x<文件> 指定不要处理.zip压缩文件中的哪些文件。
-Z unzip -Z等于执行zipinfo指令

举例:

将/home/wwwroot/xahot.zip解压到当前目录

unzip xahot.zip

如果出现这个提示:
-bash: zip: command not found   不能执行ZIP压缩,是因为没有安装ZIP,
运行下这条安装命令即可  yum install zip

### 如何在 Linuxtar 压缩文件夹并排除指定子目录 当需要在 Linux 中使用 `tar` 工具压缩文件夹的同时排除某些特定的子文件夹时,可以通过向 `tar` 命令添加 `--exclude` 参数实现这一功能[^3]。 具体来说,在创建 `.tar.gz` 归档文件的过程中,可以按照如下方式构建命令: ```bash tar --exclude './path/to/exclude' -czvf output.tar.gz folder_to_compress/ ``` 上述命令中的各个部分含义如下: - `--exclude './path/to/exclude'`: 表示要从打包过程中排除掉的目标路径。这里的路径应当相对于待压缩文件夹而言。 - `-c`: 创建新的归档文件。 - `-z`: 对创建的归档应用 gzip 压缩算法。 - `-v`: 显示处理过程中的详细信息(可选参数)。 - `-f output.tar.gz`: 指定输出文件名为 `output.tar.gz`。 为了更灵活地控制哪些子文件夹应该被忽略,还可以多次运用 `--exclude` 选项或者提供通配符模式来进行匹配。例如,若想一次性排除多个不同位置下的子文件夹,则写成这样: ```bash tar --exclude='./folder1/subdirA' --exclude='./folder2/subdirB/*' -czvf archive_name.tar.gz root_directory/ ``` 此命令将不会把位于 `root_directory/folder1/` 下面叫作 `subdirA` 的子文件夹以及任何存在于 `root_directory/folder2/` 路径下名称以 `subdirB` 开头的子文件夹加入到最终生成的归档包里去。 #### 注意事项 对于相对路径和绝对路径的选择取决于实际需求;通常建议采用相对路径来描述需排除的对象以便更好地适应不同的工作环境。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值