vps交流

求一个shell命令


本帖最后由 mikasa 于 2022-3-25 16:11 编辑

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

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 ./

大概就这样,来大佬帮忙看看,随便写的,命令可能不对,但不纠结

luzi3306 发表于 2022-3-25 15:46
for  i  in  `ls  xxx`
do
unrar $i

感谢,差不多是我想要的

luzi3306 发表于 2022-3-25 15:46
for  i  in  `ls  xxx`
do
unrar $i

不行啊,老哥,实际文件名中是带有空格的,用ls给i赋值时一个文件名沿着空格被分成两个值了