Bash-创建别名以在后台运行任务并继续运行其他任务

chr*_*ris 3 bash alias

我的目标是拥有一个将运行以下命令的别名:

alias thing="task_1 & && task_2"
Run Code Online (Sandbox Code Playgroud)

关键是task_1是一个长期运行的任务,应在task_2之前启动,但最终两者应同时运行。

有什么建议么?

Sni*_*gus 6

如果两个都应同时运行,则&&可能不是您要使用的。它等待第一个命令的退出,仅在第一个命令成功的情况下才执行第二个命令。以第一个任务为背景,这实际上没有任何意义。

我倾向于按照这种方式来做您要做的事情:

    alias thing="(sleep 5 &); sleep 1;"
Run Code Online (Sandbox Code Playgroud)

(括号具有我喜欢的副作用:您不会收到有关进程被分叉或收获的通知。)