首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >bash脚本中的执行顺序

bash脚本中的执行顺序
EN

Stack Overflow用户
提问于 2012-12-07 23:39:23
回答 2查看 3.6K关注 0票数 0

这些bash命令的执行顺序是什么?有没有可能第四条线在第一条线或第二条线结束之前开始?

代码语言:javascript
复制
find $LOCAL_TMP -type f -exec grep -l 'operationType="ACTIVATION"' {} ';' | xargs grep -l 'serviceCode="ACC-FTTS' | xargs -ICrTopoIpnatif mmv CrTopoIpnatif $LOCAL_TOPO

find $LOCAL_TMP -type f -exec grep -l 'operationType="DEACTIVATION"' {} ';' | xargs grep -l 'serviceCode="ACC-FTTS' | xargs -ICrTopoIpnatif mmv CrTopoIpnatif $LOCAL_TOPO

echo "mmv $LOCAL_TMP/**/*.xml $REP_LOCAL" >> $LOGFILE
mmv "$LOCAL_TMP/**/*.xml" "$REP_LOCAL" >> $LOGFILE

我之所以这样问,是因为我在$REP_LOCAL中找到了这些文件(这是另一个脚本的池目录,文件显示在脚本的日志中),而不是在$LOCAL_TOPO中(这里没有脚本日志中的任何内容)。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-07 23:41:44

它是连续的。每件事都按顺序发生。如果您使用以下标头运行脚本

代码语言:javascript
复制
#!/bin/bash -x

然后,您将在每个命令执行时看到它。

票数 3
EN

Stack Overflow用户

发布于 2012-12-07 23:50:30

只要您在前台执行所有命令,这些命令就会按照您在脚本中指定的顺序执行。

代码语言:javascript
复制
command1
command2
command3

一个接一个地执行。

这里

代码语言:javascript
复制
command1 &
command2
command3

如果command1需要比其他两个更多的时间来完成,那么command2和command3可能会在command1之前完成。这是因为command1和command2以及后来的command3是并行运行的,而在第一个示例中,所有命令都是在前台顺序运行的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13766221

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档