先来看一段错误的代码。
#!/bin/bash
for x in `ls */.*/.*`
cat $x|do echo $x
while read line
do
c=`echo $line|awk -f'(' '{print $1}'`
#echo $c
i=$((i+$c))
done
echo
done
echo $i
以上代码有什么问题呢?
cat之后的管道会使i的值没有被加1。
正确的方法:
#!/bin/bash
for x in `ls */.*/.*`
do echo $x
while read line
do
c=`echo $line|awk -f'(' '{print $1}'`
#echo $c
i=$((i+$c))
done<$x
echo
done
echo $i
如对本文有疑问,
点击进行留言回复!!
相关文章:
-
-
-
-
-
-
-
-
嵌入式学习经历帖
随着科技的进步,全凭机械结构完成各种运动的时代已经渐行渐远,不过我仍然对于之前创造的各种运动机构着迷。现在技术的...
[阅读全文]
-
-
-
网友评论