分页: 1 / 1

小白问题,空格的问题和参数的问题

发表于 : 2012-01-20 15:25
jadeity
#!/bin/sh
for i in *.osz
do
unzip $i -d $i|sed '/s/....$/'
done

1.unzip $i 但是文件名里有空格,unzip读不到文件。
2.$i |sed '/s/....$/, 这个如何做 -d 参数?

Re: 小白问题,空格的问题和参数的问题

发表于 : 2012-01-20 15:45
mimihu88
加个双引号就可以读取含空格的文件名了
"$i"

Re: 小白问题,空格的问题和参数的问题

发表于 : 2012-01-20 16:46
jadeity
#!/bin/sh
for i in *.osz
do
echo $i|sed 's/....$// ' >temp
d=$(cat temp)
echo $d
unzip "$i" -d "$d"
rm -rf temp
rm -rf "$i"
done

终于解决问题了,THX。

Re: 小白问题,空格的问题和参数的问题

发表于 : 2012-01-25 11:40
aerofox

代码: 全选

#!/bin/bash
for i in *.osz
do
    d=$(echo $i|sed 's/....$// ' )
    d="${i%f????}"        #如果上面的 .... 不是代表省略,而是确实的四个点,则可以用这条语句代替
    unzip "$i" -d "$d"
    rm -f "$i"
done