Linux tar命令一个有用的参数--strip-component

在解压文件的时候,如果压缩包中的文件存在多级目录。解压出来的时候如果你不想要这些多级目录,你就可以使用–strip-component参数来实现。

来看个例子:

1、查看压缩文件

~]# tar -ztvf /tmp/pkg.tgz
drwxr-xr-x root/root         0 2022-05-17 19:05 pigsty/
-rw-r--r-- root/root     19244 2014-07-04 12:15 pigsty/perl-constant-1.27-2.el7.noarch.rpm
-rw-r--r-- root/root   8360316 2021-02-04 00:48 pigsty/perl-5.16.3-299.el7_9.x86_64.rpm
drwxr-xr-x root/root         0 2022-05-17 17:52 pigsty/python/
-rw-r--r-- root/root   1723581 2022-05-17 16:18 pigsty/python/pip-21.3.1-py3-none-any.whl
-rw-r--r-- root/root   8529644 2022-05-17 16:18 pigsty/python/jupyterlab-3.2.9-py3-none-any.whl
-rw-r--r-- root/root    133630 2022-05-17 16:18 pigsty/python/Jinja2-3.0.3-py3-none-any.whl
-rw-r--r-- root/root    396512 2022-05-17 16:18 pigsty/python/jupyter_server-1.13.1-py3-none-any.whl
-rw-r--r-- root/root     86914 2022-05-17 16:18 pigsty/python/jupyter_core-4.9.2-py3-none-any.whl

2、需要把pkg包下的文件解压到/www/pigst中

先来看下不带参数的时候

mkdir -p /www/pigst
tar -xf /tmp/pkg.tgz  -C /www/pigst

你会发现目录层级是包含压缩包中的目录层级的。

3、带上–strip-component参数解压

–strip-components=NUMBER 解压时从文件名中清除 NUMBER个引导部分

–strip-component=1 代表解压出来的文件,剥离前一个路径

–strip-component=2 代表解压出来的文件,剥离前两个路径

tar -xf /tmp/pkg.tgz --strip-component=1 -C /www/pigst
tar -xf /tmp/pkg.tgz --strip-component=2 -C /www/pigst
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MyySophia

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值