分页: 1 / 1

for file in `find . -type f` ;do chmod a-x "$file"; done

发表于 : 2009-10-14 18:41
wzssyqa
为什么遇到有空格的文件名就报错呢?

for file in `find . -type f` ; echo "$file" ;do chmod a-x "$file"; done
bash: 在未预料的“echo”附近出现语法错误

这是怎么回事?

Re: for file in `find . -type f` ;do chmod a-x "$file"; done

发表于 : 2009-10-14 19:46
cnkilior

代码: 全选

for file in `find . -type f` ; do echo "$file" ; chmod a-x "$file"; done

Re: for file in `find . -type f` ;do chmod a-x "$file"; done

发表于 : 2009-10-14 20:33
gzbao9999
#!/bin/bash
find . -type f|while read i;
do
echo "${i}"
chmod a-x "$i" ;
done

使用for来读入文件里的行时,会自动把空格和换行符作为一样分隔符,so...换while
注意格式,要么换行,要么象楼上加分号 :em06

Re: for file in `find . -type f` ;do chmod a-x "$file"; done

发表于 : 2009-10-15 17:03
543082593
wzssyqa 写了:为什么遇到有空格的文件名就报错呢?

for file in `find . -type f` ; echo "$file" ;do chmod a-x "$file"; done
bash: 在未预料的“echo”附近出现语法错误

这是怎么回事?
很显然啊 没有
do for语句一定不要忘记了 do啊 :em04

Re: for file in `find . -type f` ;do chmod a-x "$file"; done

发表于 : 2009-10-15 17:05
hubert_star
chmod a+X or chmod a+x?

没去man过chmod?