У меня есть много файлов, которым нужно добавить расширение, но они находятся в каталоге с большим количеством подкаталогов. В настоящее время файлы не имеют расширения вообще. Как бы я переименовал только файлы, но не переименовал ни один из каталогов или подкаталогов?
Итерируйте все и проверьте, является ли это обычный файл или нет.
#bash
for file in ./*; do
[[ -f $file ]] && mv "$file" "$file.ext"
done
Если вам нужно избегать добавления расширения в файлы, у которых оно уже есть:
for file in ./*; do
if [[ -f $file && $file != *.ext ]]; then
mv "$file" "$file.ext"
fi
done