Другие ответы касались основных моментов. Кстати, вы можете увеличить пропускную способность цикла while, записав в выходной файл в конце вычисления. Сравните:
$ i=0;time while [ $i -le 1000 ]; do ((++i)); echo "GNU" >>/tmp/f; done;
real 0m0.080s
user 0m0.032s
sys 0m0.037s
с
$ i=0;time while [ $i -le 1000 ]; do ((++i)); echo "GNU"; done>>/tmp/f;
real 0m0.030s
user 0m0.019s
sys 0m0.011s
Если вы хотите использовать имена этих существующих файлов, вы можете использовать что-то вроде этого:
for FILE in fort.*
do
echo "$FILE"
done
Будут использоваться все файлы в текущем каталоге, начиная с fort.
, независимо от количества файлов. Конечно, здесь вы можете использовать любую другую команду вместо echo
.
Вот пример использования диапазона с циклом for из bash:
#!/bin/bash
for i in {1..100}
do
echo "program fort.${i}"
done
Что должно дать вам следующий вывод:
program fort.1
program fort.2
program fort.3
program fort.4
...
program fort.99
program fort.100