bash shell 循环读入每一行(转)

由于使用for来读入文件里的行时,会自动把空格和换行符作为一样分隔符,因为当行里有空格的时候,输出的结果会很乱,所以……

cat line.txt |while read i
> do
> echo $i
> done

或者:

while read i
> do
> echo $i
> done < line.txt

再举个实际点的例子(把所有目录权限修改为755,所有文件为644):

# find ./ -type f>filelist
# find ./ -type d>dirlist
# cat dirlist |while read i; do chmod 755 "${i}"; done
# cat filelist |while read i; do chmod 644 "${i}"; done

作者: hao32 | 可以转载, 转载时务必以超链接形式标明文章原始出处和作者信息及版权声明
网址:http://www.hao32.com/unix-linux/338.html

posted @ 2012-10-12 13:56  CCJPP  阅读(240)  评论(0)    收藏  举报