Поиск и переименование файлов
У меня есть около 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 "\*" "-"`' - '{}' \;