Назад | Перейти на главную страницу

Интерактивные задания pbs / Torque: трюк bash для запуска команды после запуска

Я использую интерактивные задания pbs в bash, запущенные с использованием qsub -I, и я бы хотел запустить какую-нибудь команду после запуска. После выполнения этой команды я хотел бы продолжить использовать интерактивное резервирование как обычно.

Я не уверен, как это сделать, потому что, как и при открытии интерактивных приглашений ssh, команды, выдаваемые после завершения работы удаленного терминала, т.е. qsub -I; hello.

РЕДАКТИРОВАТЬ: Чтобы уточнить, в приведенном выше примере (qsub -I; hello), Я хочу бежать hello внутри резервирование qsub, а не на машине, на которой я делал резервирование.

Я знаю, что могу указать сценарий задания для qsub, но из страница руководства Я не думаю, что он делает то, что я хочу:

... работа - это интерактивная работа. Скрипт будет обработан для директив, но не будет включен в задание.

Попробуйте это: запустите qsub -I нажмите CTRL-Z, чтобы перевести процесс в спящий режим, запустите hello, когда hello завершено, вы можете использовать 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

взято из: http://tldp.org/LDP/abs/html/subshells.html