Как запускать задания параллельно через скрипт tcsh? - PullRequest
0 голосов
/ 01 июня 2018

Рассмотрим сценарий tcsh со следующим кодом:

#!/bin/tcsh -f

set PWD = $PWD

if (!a) then
  mkdir a
  cd a
  ln -sfn temp.txt
endif 
cd $PWD/a
job << END
# some tool specific settings
END

Теперь,

  1. Мне нужно сделать то же самое для двух других каталогов, скажем, B & Cчерез тот же сценарий.

  2. Я хочу, чтобы все три работали параллельно.

Пожалуйста, дайте мне знать, как это сделать.

1 Ответ

0 голосов
/ 11 сентября 2018

просто добавьте «&» здесь

job << END

т.е.

job << END &
# some tool specific settings
END

Но учтите, что вывод «# некоторых настроек инструмента» из всех нескольких заданий будет напечатан.вместе и будет грязно.Умная вещь - перенаправить вывод каждой работы в свой собственный файл

job >> job_output.out << END &
# some tool specific settings
END

Закодированное имя файла "job_output.out" выше вполне допустимо, так как вы каждый раз делаете компакт-диск в разные каталоги, и поэтому job_output.out будетбыть другим файлом для каждой работы.

...