gpt4 book ai didi

linux - 串行运行多个命令并确保所有命令都运行

转载 作者:太空宇宙 更新时间:2023-11-04 04:33:44 25 4
gpt4 key购买 nike

我想一个接一个地运行一系列unix命令。如果这些命令中的任何一个由于某种原因终止,后续命令应该继续运行。

例如,我有 3 个命令,分别称为“setup”、“long-running-job”和“teardown”。如果“long-running-job”以任何退出代码完成,或者意外终止,我想确保“teardown”在任何情况下都能运行。

简单地用分号连接所有命令似乎不起作用。我尝试运行 touch test.txt; ping localhost; rm test.txt在 macOS 终端中,在运行时关闭终端选项卡,发现“test.text”没有被删除。

最佳答案

如果您想确保即使您的交互式窗口关闭,您的命令仍会继续执行,并且所有命令都按照您指定的顺序依次发生,然后使用此答案中的方法:https://unix.stackexchange.com/a/47231

基本上是针对您问题中的命令行

nohup sh -c 'touch test.txt; ping localhost; rm test.txt'

这意味着关闭终端发送的挂断信号将被忽略。

关于linux - 串行运行多个命令并确保所有命令都运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39158370/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com