在终端中运行耗时的进程时,我喜欢添加类似say "done"
附加命令的内容,以便在当前进程结束时收到警报。例如:
$ do_this_long_thing; say "done";
Run Code Online (Sandbox Code Playgroud)
效果很好。但有时我忘记了say "done"
命令,只有在长命令已经运行时才意识到它。一旦命令已经运行,有没有办法将该附加命令添加到队列中?
我的解决方案是:使用 Control+Z 暂停您长时间运行的任务,然后键入以下内容:
Run Code Online (Sandbox Code Playgroud)fg; echo "Done!"
如果您想根据命令的成功或失败运行不同的反应,请使用 && 和 || 作为短路运算符。
Run Code Online (Sandbox Code Playgroud)fg && echo "Success!" || echo "Failure!"