Итак, у меня есть bash-скрипт, который обрабатывает ряд подкаталогов, ищет файлы, содержащие определенную строку, а затем печатает итоговые значения файлов и каталогов для вхождений этой строки.Код выглядит следующим образом.
for dir in $(find * -type d); do
echo "directory: $dir" >> $OUT
for f in $(find $dir/* -type f); do
echo -n "$(basename $f) " >> $OUT
grep -c -h $1 $f >> $OUT
done
echo -n "directory total: " >> $OUT
grep -c -h $1 $dir/*.* | awk '{SUM += $1} END {print SUM}' >> $OUT
done
Когда он делает это, если я читаю в 10 файлах, он перечисляет их в текстовом файле как file1.txt, file10.txt, file2.txt и т. Д. *
Можно ли как-нибудь заставить его напечатать file1.txt, file2.txt, file3.txt и т. Д., И чтобы 10-й файл был фактически указан в порядке?
Я новичок в BASH, поэтому мне просто интересно, знает ли кто-нибудь об этом.Любая помощь с благодарностью.И да, файлы буквально называются file1.txt, file2.txt и т. Д. Это в основном просто для ознакомления со сценариями BASH.