Не единственный способ, но лучший и самый простой способ — это действительно цикл и предпочтительно цикл for. Это тривиально:
cd /test
for file in test*; do
mv "$file" /test/dir/"$file".pgp
done
Вот именно.
По крайней мере один из ваших исходных файлов получен из системы Windows, поэтому имеет другое окончание строки (CR -LF вместо CR ). Вам нужно опубликовать -обработку текстового файла, чтобы исправить это
dos2unix new_name_4.1.txt
или
tr -d '\r' <new_name_4.1.txt >tmp && mv -f tmp new_name_4.1.txt