Я использовал скрипт bash для создания входных файлов для программы. Сценарий bash генерирует список случайных чисел, за которыми следует запись входного файла. У моего сценария bash есть два раздела, где первый раздел генерирует список случайных чисел, а второй раздел использует случайное число для создания содержимого выходного файла.Напишите цикл внутри эха bash-script
# 1- Generate Random Numbers
for i in {1..200}
do
ARRAY+=($((RANDOM%885+0)))
done
echo "
${ARRAY[*]}
"> random_numbers.txt
# 2- construction of output file
echo "
# Packmol input file
filetype pdb
output peg_$(($npeg)).pdb
# selecting the structure according random number
structure peg${ARRAY[0]}.pdb
number 1
inside cube -$d. -$d. -$d. $d.
end structure
structure peg${ARRAY[1]}.pdb
number 1
inside cube -$d. -$d. -$d. $d.
end structure
structure peg${ARRAY[2]}.pdb
number 1
inside cube -$d. -$d. -$d. $d.
end structure
structure peg${ARRAY[3]}.pdb
number 1
inside cube -$d. -$d. -$d. $d.
end structure
structure peg${ARRAY[4]}.pdb
number 1
inside cube -$d. -$d. -$d. $d.
end structure
continued *****
structure peg${ARRAY[24]}.pdb
number 1
inside cube -$d. -$d. -$d. $d.
end structure
"> output.inp
Есть ли способ, если я могу запустить цикл различного диапазона (25, 50, 75 ...) по повторяющимся линиям, приведенных ниже, путем изменения номера массива?
structure peg${ARRAY[*]}.pdb
number 1
inside cube -$d. -$d. -$d. $d.
end structure
FYI, было бы лучше использовать символы нижнего регистра для имен переменных; имена всех прописных букв обычно зарезервированы для переменных среды и встроенных. –
Есть ли причина, по которой вы хотите структурировать цикл внутри эха, вместо того, чтобы разрушать «эхо» и помещать его части в цикл? –