Есть команда терминала Linux, которую я хочу запустить на удаленной машине. Я могу подключиться к машине по ssh и начать выполнение команды (ее вывод направляется в выходной файл); однако, как только я закрываю соединение ssh и закрываю окно терминала, команда останавливается. Как я могу продолжить выполнение команды даже после выхода из удаленного компьютера?
Обычно это не так, как работает linux ... Команда будет продолжать работать на «сервере» даже после отключения от ssh ... Не могли бы вы описать, какой у вас дистрибутив linux, и какую команду вы пытаетесь запустить?
—
Просто повезло на самом деле
Это машина RedHat, и команда выполняет программу Java. Сама команда не будет иметь большого смысла для вас, потому что она проприетарна.
—
Nosrettap
Вы пробовали добавить амперсанд после команды? Пример:
—
Просто повезло на самом деле
runThis -params &
Я немного подумал, и мне было интересно, является ли команда, которую вы пытаетесь выполнить, «терминальной» командой. Так, например, если я ssh на сервер и использую
—
Just Lucky Really
vi filename
, это не будет работать на сервере. Мне никогда не приходилось обходить эту проблему, но с небольшим количеством Google, похоже, это nohup
может помочь
Вы пробовали nohup и удваивать фон? Кроме того, «отсоедините» дескрипторы stdout и stderr. Запустите его так: ((nohup mycommand 1> / dev / null 2> & 1) &)
—
SadBunny