我尝试了 Google 上几乎所有的关键词,但还是没有找到答案。所以希望你们中有人知道。
什么是终端命令,它使应用程序在失败或停止执行后保持运行。
我在终端中尝试了这个循环命令:
bash -c 'while [ 0 ]; do COMMAND_HERE;done'
但是它会立即执行命令,而不是在前一个命令失败或结束后执行。我希望该命令仅在进程结束时执行。
我想在直播时使用 ffmpeg 的命令。有时连接失败或发生其他问题。当发生这种情况时,ffmpeg 会停止执行(显然),但我希望它在之后一次又一次地重试相同的命令。
你是怎样做的?
附言:我已经在 Google 上尝试过这些关键词(我不知道为什么我仍然没有找到任何接近的答案):
- mac 执行命令失败
- mac 同步执行命令
- mac bash 重新执行终端
- mac loop 命令
- 如果停止,mac 会重新运行应用程序
- mac终端保留进程
- 终端时 bash
- mac 终端循环命令
- ffmpeg 无限
答案1
从 bash 提示符尝试此操作:
n=1 ; 当为真时 ; 执行 echo -n "命令启动 #$n: " ; 睡眠 1 ; n=$(( n + 1 )) ; 完成
注意:您可能确实需要sleep 1
在那里进行一些清理,然后再重新启动。