Хотя я не до конца понял, что вы хотите сделать, я предполагаю следующее:
- Для циклического перебора элементов
p001
, p002
или p003
,чей номер индексируется как mcount
в диапазоне {1..3}. - Для выполнения
./model.exe
на основе сгенерированных переменных цикла.
Тогда вы могли бы что-то сказатькак показано ниже без генерации сценария .model.sh
.
#!/bin/bash
p001="57 59 13 30 96 45 24 71 33 15 40"
p002="57 7 13 11 80 44 47 50 84 86 64"
p003="57 7 13 11 50 44 42 50 84 86 64"
for mcount in {1..3}; do
pad_m=$(printf "%03d" $mcount)
mnum=$pad_m
varname="p$pad_m" # will hold "p001", "p002" or "p003"
p=${!varname} # indirect variable referencing
for pvar in $p; do
pad_p=$(printf "%03d" "$pvar")
# echo "$pad_p" # for debugging
for svar in sq1 sq99; do
state_file="${mnum}/${svar}"
./model.exe "$state_file"
# echo "$state_file" # for debugging
done
done
done
Если мое предположение неверно, пожалуйста, сообщите мне.
BR.