Linux:关于脚本for循环的执行顺序

#!/bin/bashsum=0forpidin`ps-ef|grep$1|grep-vgrep|awk'{print$2}'`dosum=$[$sum+`lsof-p$... #!/bin/bash
sum=0
for pid in `ps -ef|grep $1|grep -v grep|awk '{ print $2 }'`
do
sum=$[$sum+`lsof -p $pid|wc -l`]
done
echo $sum

这段脚本里,for循环是在每次进来时都会执行一遍`ps -ef|grep $1|grep -v grep|awk '{ print $2 }'`,然后取第一个值、第二个值、第三个值,还是说,只会执行一次`ps -ef|grep $1|grep -v grep|awk '{ print $2 }'`,然后在返回的结果集中再取第一个值、第二个值、第三个值呢?
展开
 我来答
小米飞猫
2014-04-04 · 专注于IT监控领域技术
小米飞猫
采纳数:1653 获赞数:4811

向TA提问 私信TA
展开全部
执行一次,for in 后边的`` 或 $() 会产生一个list。然后依次读取。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
948242092
2014-04-04 · TA获得超过185个赞
知道小有建树答主
回答量:222
采纳率:0%
帮助的人:152万
展开全部
只会执行一次`ps -ef|grep $1|grep -v grep|awk '{ print $2 }'`,然后在返回的结果集中再取第一个值、第二个值、第三个值
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
慕岑华雨文
2020-06-21 · TA获得超过1092个赞
知道小有建树答主
回答量:1968
采纳率:100%
帮助的人:9.4万
展开全部
若第一句是后台执行的话(比如加个“&”),则可以不用的第一句执行完就执行第二句。
否则的话,则需要第一句执行返回后才执行第二句。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式