Допустим, я только что запустил команду, выполнение которой займет много времени, например, hg clone
весь набор разработки Pypy. На полпути я решил запустить другой процесс, например, hg up
, как только вернется первый. Есть ли способ присоединить команду для выполнения при завершении процесса, не останавливая команду / процесс и затем перезапуская ее как цепочечную команду? команда / процесс?
3
1 ответ
3
Предполагая, что вы используете bash
, и предполагая, что вы поместили долгосрочную задачу на задний план текущей оболочки, запустив longtask &
или запустив задачу, нажав CTRL + Z , вы можете добавить дополнительную команду для запуска, например:
$ sleep 45 &
[1] 27722
$ wait 27722 && echo "Done"
[1]+ Done sleep 45
Done
$
В приведенном выше примере echo "Done"
выполняется только после завершения wait
PID 27722.
То, что я не нашел, это способ поместить эту дополнительную команду в фоновый режим, чтобы вы могли продолжать работать в той же оболочке. Должен быть способ сделать это - надеюсь, это даст вам старт.