Я подключаюсь к удаленному серверу и запускаю что-то вроде этого:
cat /dev/zero > /dev/null & disown %-
Затем я делаю logout
и переподключаюсь, и ps
показывает, что процесс cat
не запущен. Зачем?
Я подключаюсь к удаленному серверу и запускаю что-то вроде этого:
cat /dev/zero > /dev/null & disown %-
Затем я делаю logout
и переподключаюсь, и ps
показывает, что процесс cat
не запущен. Зачем?
Используйте %%
или %+
для "текущей" (самой последней фоновой) работы. %-
для предыдущей работы, которая является второй из самых последних остановленных или фоновых работ. Они означают одно и то же, если есть только одна работа. Но если бы вы оставили некоторые фоновые задания, запущенные в более ранней части сеанса или сценария оболочки, то, как вы используете %-
возможно, не нацелено на работу, о которой вы думаете.
Эта команда работает на моем конце. Кажется, требуется много ресурсов. Может быть, вы хотите попробовать:
sleep 999 & disown %-
и сделать ps aux | grep sleep
после перелог
Однако, если вы знаете, что хотите отменить процесс до его запуска, вы можете просто использовать nohup:
nohup sleep 999