欢迎光临
我们一直在努力

求问大佬们一个shell语句


linux目录
A/A1/A01
A/A1/A02
A/A2/A03
A/A2/A04
。。。

如何用一条语句压缩A01,A02,A03,A04(都是文件夹,数量很多)?

本帖最后由 pcppc 于 2022-5-14 22:31 编辑

for dirn in ‘ls a/’;
do
for  dir2n in ‘ls’ ;
do tar -zvf a/$dirn/$dir2n /newdir;
done;
done
不知道对不对

应该可以用 *代替
本帖最后由 spr1ng 于 2022-5-14 22:31 编辑

撤回了 把

能给个例子么?

lithome 发表于 2022-5-14 22:24
能给个例子么?

前面的路径不规律吗?我看你发的不规律

spr1ng 发表于 2022-5-14 22:25
前面的路径不规律吗?我看你发的不规律

对,要压缩不同二级目录下的三级目录

pcppc 发表于 2022-5-14 22:28
for dirn in ‘ls a/’;do for  dir2n in ‘ls’;do tar -zvf a/$dirn/$dir2n /newdir; done;done

不是一个脚本解决。但套循环是个好办法。多谢大佬!

有没有大佬用管道搞定呢?

find A -mindepth 2 -type d|xargs tar zcvf A.tar.gz

zcrdhm 发表于 2022-5-14 22:33
find A -mindepth 2 -type d|xargs tar zcvf A.tar.gz

find A -mindepth 2 -type d起作用,
列出了
A/A1/A01
A/A2/A03
,,
后面压缩没执行,需要压缩成A01.tar.gz这种

赞(0)
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《求问大佬们一个shell语句》
文章链接:https://www.moeloc.com/36841.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。
Telegram交流群:加入聊天