2016-06-28 3 views
0

Я хотел бы выполнить 120 моделей сценария оболочки в течение 100 лет. т.е.цикл в команде выполнения

start=1900; end=2000 
using model1,model2, model3 and so on until 120 models 

можно выполнить вручную с помощью следующей команды: (позволяет сказать, что 3 модели)

exec "${script_dir}myscript $start $end $model1 $model2 $model3" 

Как я могу использовать цикл для расширения выше команды что-то вроде

exec "${script_dir}myscript $start $end $model1 $model2 $model3 $model4 ..... $model120" 
+0

Просьба указать, как 120 моделей должны распространяться более 100 лет. – agc

+0

Действительно ли вы ищете POSIX-совместимое решение, как предлагают ваши теги, или 'bash' приемлемо (что упростило бы ответ)? – mklement0

+0

Я ищу что-то, что будет выглядеть как exec '$ {script_dir} myscript $ start $ end $ model1 $ model2 $ model3 и т. Д. До $ model120. Не могли бы вы предложить – Kay

ответ

3
start=1900 
end=2000 
command="\${script_dir}myscript \$start \$end" 
i=1 

while [ $i -le 120 ] 
do 
    command="$command \$model$i" 
    i=`expr $i + 1` 
done 

exec $command 

Этот скрипт будет просто выполнять цикл от 1 до 120 и объединить все модели в вашу команду.

+0

Спасибо за ваш ответ. Но я смотрю что-то, что будет выглядеть как «exec» $ {script_dir} myscript $ start $ end $ model1 $ model2 $ model3 и т. Д. До $ model120. Не могли бы вы предложить – Kay

+0

Вам нужны значения переменных или просто это точное text? – Simon

+0

Мне нужен точный текст, потому что эта команда предоставит путь к myscript. – Kay

Смежные вопросы