Поиск и переименование файлов

У меня есть около 1000 файлов, содержащих персонажа * во имя. Мне нужно найти эти файлы и заменить * с -, Я работаю с HP UX v11. Я использую следующую команду

find . -type f -name '*\**' -exec bash -c 'f="$1"; mv "$f" "${f//\*/-}"' - '{}' \;

Мне сказали, что это работает, но для меня это переименовывает весь файл в - вместо замены *,

GNU bash, версия 2.04.0(1)-релиз (hppa2.0w-hp-hpux11.00)

1 ответ

Решение

Попробуйте эту команду найти команду:

find . -type f -name '*\**' -exec bash -c 'f="$1"; echo mv "$f" `echo "$f"|tr "\*" "-"`' - '{}' \;
Другие вопросы по тегам