Посмотрите, сможете ли вы запустить на нем Perl:
perl -v
Если он запускается, вы можете установить или посмотреть, rename
запускаются ли сценарии Perl и он может очень легко переименовать файлы. Пример:
touch "Freddy :;|=, Frog" # create file with mad name rename --dry-run 's/[:;|=,]/_/g' *Frog # see what it would become 'Freddy :;|=, Frog' would be renamed to 'Freddy _____ Frog'
Я сделал несколько других примеров - смотрите здесь .
Если вы не можете использовать rename
, то вы можете использовать что-то вроде этого, но, пожалуйста, сначала протестируйте его на некоторых копиях нескольких файлов и сделайте резервную копию перед запуском.
Здесь я просто тестирую файлы GIF, поэтому я не делаю беспорядок. Кроме того, я на самом деле ничего не делаю, я просто вывожу то, что я буду делать:
find . -iname "*gif" -exec bash -c 'new=$(tr ";:|" "___" <<< "{}"); echo "mv {} $new"' \;
Если это выглядит правильно, вам нужно выполнить следующую команду:
find . -iname "*gif" -exec bash -c 'new=$(tr ";:|" "___" <<< "{}"); mv "{}" "$new"' \;
что немного отличается, потому что нет, echo
и мне нужно заключить в кавычки параметры mv
.