Я на Linux-машине.
Я хотел бы запустить четыре сценария perl на удаленном сервере. Каждый сценарий создает единственный выходной файл, но его выполнение может занять несколько часов. Я хотел бы запускать сценарии в фоновом режиме, чтобы, если я отключусь от сервера, выйду из приглашения оболочки или выйду из системы, он продолжит работу. Эти сценарии также выводят строки на командный терминал во время его работы. Я хотел бы иметь возможность проверять операторы печати, которые скрипт выводит на командный терминал.
Обычно я бы использовал screen -S
команда для создания экрана. Затем нажмите CTRL+А CTRL+D отделить и screen -r
для повторного подключения к экрану, но на удаленном сервере, на котором я работаю, нет экрана. И у меня нет доступа sudo для его установки.
Как мне запустить эти 4 сценария perl одновременно в фоновом режиме на удаленном сервере?
Например, мой сценарий называется gene1.pl
, Как мне это сделать? Я пробовал делать nohup perl gene1.pl & >> gene1-terminal_out.txt
но это не работает. Опять же, я хотел бы иметь возможность динамически просматривать вывод на терминале во время выполнения сценария.
nohup не имеет возможности отправлять вывод на терминал (по крайней мере, в CentOS)
попробуй это:
bash$ (perl gene1.pl 2>&1 | tee output.log) &
вывод будет записан в терминал И output.log для дальнейшего использования.