[~me]$someExecutable &
现在,在shell脚本中:
foo() { echo "logic"}bar() { echo "IDic"}baz() { echo "katra"}foo &barbaz
我的目的是异步调用函数foo,然后让脚本的其余部分继续在原始进程上下文中执行.
当我执行这个示例脚本时,我得到了预期的输出:
logicIDickatra
(也就是说,只有一个明显的调用bar和baz;我完全没有被三行输出的相对顺序所困扰,我理解这可能会有所不同)
但我可能误解了输出和脚本本身.如果是这样,那肯定会解释我在实际代码中看到的奇怪之处,并且让我不必再深入挖掘.
是否有可能在子进程中调用foo之后,forked shell脚本会继续吗?这意味着我的shell脚本的其余部分将被执行两次?
当我使用&像这样在Bash脚本中?
解决方法 &符号仅在您的示例中分配对foo()的调用.它不是分支整个脚本.只有foo()在一个单独的线程中运行,当foo()结束时它会退出. bar()和baz()继续在同一个线程中运行 总结以上是内存溢出为你收集整理的linux – 当我在Bash脚本中使用`\u0026`函数时会发生什么?全部内容,希望文章能够帮你解决linux – 当我在Bash脚本中使用`\u0026`函数时会发生什么?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)