Мертвый просто.
Как переименовать
05_h.png
06_h.png
to
05_half.png
06_half.png
По крайней мере, я думаю, это просто, но для Google такого рода трудно, если вы уже не знаете.
Спасибо....
Мертвый просто.
Как переименовать
05_h.png
06_h.png
to
05_half.png
06_half.png
По крайней мере, я думаю, это просто, но для Google такого рода трудно, если вы уже не знаете.
Спасибо....
Просто используйте bash, не нужно вызывать внешние команды.
for file in *_h.png
do
  mv "$file" "${file/_h.png/_half.png}"
done
  Не добавляйте #!/bin/sh
Для тех, кто нуждается в одном слое:
for file in *.png; do mv "$file" "${file/_h.png/_half.png}"; done
Попробуйте выполнить команду rename:
rename 's/_h.png/_half.png/' *.png
Update:
пример использования:
создать некоторый контент
$ mkdir /tmp/foo
$ cd /tmp/foo
$ touch one_h.png two_h.png three_h.png
$ ls 
one_h.png  three_h.png  two_h.png
тестовое решение:
$ rename 's/_h.png/_half.png/' *.png
$ ls
one_half.png  three_half.png  two_half.png
Вы ищете чистое решение bash? Существует много подходов, но здесь один.
for file in *_h.png ; do mv "$file" "${file%%_h.png}_half.png" ; done
Это предполагает, что единственными файлами в текущем каталоге, которые заканчиваются на _h.png, являются те, которые вы хотите переименовать.
Гораздо более конкретно
for file in 0{5..6}_h.png ; do mv "$file" "${file/_h./_half.}"
Предполагая, что эти два примера являются вашими. файлы.
for f in *.png; do
  fnew=`echo $f | sed 's/_h.png/_half.png/'`
  mv $f $fnew
done
Используйте утилиту rename, написанную в perl.
Возможно, он недоступен по умолчанию, хотя...
$ touch 0{5..6}_h.png
$ ls
05_h.png  06_h.png
$ rename 's/h/half/' *.png
$ ls
05_half.png  06_half.png
for i in *_h.png ; do
  mv $i `echo "$i"|awk -F'.' '{print $1"alf."$2}'`
done
Другой подход можно использовать вручную с помощью опции переименования пакетов
Щелкните правой кнопкой мыши файл → Пользовательские команды файлов → Пакетное переименование и вы можете заменить h. с половиной.
Это будет работать с linux-based gui с использованием WinSCP и т.д.
Используйте утилиту rename:
[email protected]:/tmp/foo $ touch 05_h.png 06_h.png
[email protected]:/tmp/foo $ rename 's/_h/_half/' * 
[email protected]:/tmp/foo $ ls -l
total 0
-rw-r--r-- 1 rc rc 0 2011-09-17 00:15 05_half.png
-rw-r--r-- 1 rc rc 0 2011-09-17 00:15 06_half.png