Интерактивные задания pbs/Torque: трюк bash для запуска команды после запуска
Я использую pbs интерактивные задания в bash, запущенный с помощью qsub -I
, и я хотел бы запустить некоторую команду после запуска. После запуска этой команды я хотел бы продолжать использовать интерактивное резервирование как обычно.
Я не уверен, как это сделать, потому что, как и при открытии интерактивных ssh-запросов, команды, выполненные после завершения удаленного терминала, т.е. qsub -I; hello
,
РЕДАКТИРОВАТЬ: чтобы уточнить, в приведенном выше примере (qsub -I; hello
) Я хочу бежать hello
внутри бронирования qsub, а не на машине, где я делаю бронирование.
Я знаю, что могу указать сценарий задания для qsub, но со страницы руководства я не думаю, что он делает то, что я хочу:
... работа это интерактивная работа. Скрипт будет обработан для директив, но не будет включен в работу.
1 ответ
Попробуйте это: запустите qsub -I нажмите CTRL-Z, чтобы перевести процесс в режим сна. Привет, когда привет закончен. Вы можете использовать fg, чтобы вернуться к qsub.
вы можете сделать то же самое с
qsub -I &; echo "hello world"; fg
Если я понимаю ваше разъяснение, вы, возможно, захотите запустить это в подоболочке, т.е.
Для создания "выделенной среды" для группы команд можно использовать подоболочку.
COMMAND1
COMMAND2
COMMAND3
(
IFS=:
PATH=/bin
unset TERMINFO
set -C
shift 5
COMMAND4
COMMAND5
exit 3 # Only exits the subshell!
)
# The parent shell has not been affected, and the environment is preserved.
COMMAND6
COMMAND7