全球主机交流论坛

标题: 求一个shell命令 [打印本页]

作者: mikasa    时间: 2022-3-25 15:43
标题: 求一个shell命令
本帖最后由 mikasa 于 2022-3-25 16:11 编辑

假设有文件夹a,其下有压缩包1.rar 2.rar 3.rar(实际文件名为中文且其中含有空格) .... 要把每个压缩包解压再压缩成zip并删除解压后的文件。求求万能的mjj帮帮忙


作者: luzi3306    时间: 2022-3-25 15:46
for  i  in  `ls  xxx`
do
unrar $i
done

for i in  `ls xxx|grep -v rar`
gzip  $i  $i.zip
done

mv *.zip  ../
rm *  -fr ./

大概就这样,来大佬帮忙看看,随便写的,命令可能不对,但不纠结
作者: mikasa    时间: 2022-3-25 15:52
luzi3306 发表于 2022-3-25 15:46
for  i  in  `ls  xxx`
do
unrar $i

感谢,差不多是我想要的
作者: mikasa    时间: 2022-3-25 16:08
luzi3306 发表于 2022-3-25 15:46
for  i  in  `ls  xxx`
do
unrar $i

不行啊,老哥,实际文件名中是带有空格的,用ls给i赋值时一个文件名沿着空格被分成两个值了
作者: 920    时间: 2022-3-25 17:44
压缩包里面会不会还有压缩包
作者: 深海空间    时间: 2022-3-25 17:54
mikasa 发表于 2022-3-25 16:08
不行啊,老哥,实际文件名中是带有空格的,用ls给i赋值时一个文件名沿着空格被分成两个值了 ...

竟然知道问题所在,那带着这个问题去找答案不就好了嘛
https://blog.csdn.net/xiejianjun417/article/details/121889216
作者: mikasa    时间: 2022-3-25 21:14
深海空间 发表于 2022-3-25 17:54
竟然知道问题所在,那带着这个问题去找答案不就好了嘛
https://blog.csdn.net/xiejianjun417/article/det ...

谢谢,已经解决了
作者: luzi3306    时间: 2022-3-26 18:13
mikasa 发表于 2022-3-25 21:14
谢谢,已经解决了

我觉得你这需求还是挺简单的




欢迎光临 全球主机交流论坛 (https://lilynana.eu.org/) Powered by Discuz! X3.4