Вы можете l oop просматривать файлы и использовать расширение параметров PE для нарезки и перемешивания строк и mv для переименования файлов.
Вот пример, сначала давайте создадим пустые файлы, используя touch , но сначала нам нужно создать новый каталог (папку, как вы ее называете) и go в этот новый каталог, используя mkdir и cd.
mkdir newdirectory && cd newdirectory
Теперь создайте пустые файлы, используя touch.
touch GX01#### GX02#### GX03#### GX04####
Теперь проверьте пустые файлы, используя ls
ls *
Вывод должен выглядеть так:
GX01#### GX02#### GX03#### GX04####
Теперь, когда мы создали пустые файлы, мы можем теперь сделать переименовывающая часть.
for file in GX*; do
file1="${file#*??}"
file2=${file1#*??}
file3=${file1%*$file2}
echo mv -v "$file" "${file%*$file1}${file2}"-"$file3"
done
Выход должен быть на stdout (это ваш экран) из-за эха.
mv -v GX01#### GX####-01
mv -v GX02#### GX####-02
mv -v GX03#### GX####-03
mv -v GX04#### GX####-04
Если вы удовлетворены тем, что видите, то удалите echo , поэтому mv может переименовывать файлы. Вот пример того, как выполняется нарезка.
file=GX01####
file1="${file#*??}"
file2=${file1#*??}
file3="${file1%*$file2}"
printf '%s\n' "$file1" "$file2" "$file3"
Вывод должен быть примерно таким.
01####
####
01
? означает одну строку из оболочка.
Слово предостережения и совет, сделайте резервную копию файлов, которые вы хотите редактировать, на случай, если оболочка допустила ошибку при переименовании файлов. : -)
Также вам, вероятно, следует использовать перетаскивание оболочки, например nullglob см.
http://mywiki.wooledge.org/glob#nullglob
См. Man bash и найдите Расширение параметров.
PAGER='less +/^[[:space:]]*parameter\ expansion' man bash
Некоторые онлайн-ресурсы с подробным объяснением и примерами.
http://mywiki.wooledge.org/BashFAQ/073
https://wiki.bash-hackers.org/syntax/pe