2015-08-21 3 views
0

У меня длинная структура папки/файла с кучей файлов кода. некоторые из моих файлов имеют «x5g6» шаблон на их имя, имя папки, а также текст внутри файлов.Изменение имени файла сценария Linux, имя папки и ингридиенты

например
/Mycodes 
/pp_x5g6 
- vbg_x5g6.cmd 
- x5g6_pp 
- x5g6_pp.ml 

так далее так далее также, если вы откроете vbg_x5g6.cmd файл, вы можете увидеть, есть код в нем, и он также имеет эту модель (например функция bb_x5g6 = х + у);

Мой вопрос в том, какие команды я могу использовать для рекурсивного изменения x5g6 в x5g7 на папку, имена файлов, а также внутри файлов?

До сих пор я мог только найти;

find . -type f -exec sed -i 's/x5g6/x5g7/g' {} + 

но это только изменяет то, что находится внутри файлов, а не имена папок и файлов.

ответ

1

Похоже, у вас есть решение уже для редактирования содержимого файла.

Для имен файлов/каталогов, я считаю, что общепризнанные ответы использовать либо программу под названием mmv, (который я сам предпочитаю), или один называется rename

Для записи, этот вопрос дубликат https://unix.stackexchange.com/questions/98070/rename-files-in-directory.

Оригинал содержит ответ, также рекомендующий zmv (если вы используете zsh вместо bash).

Редактировать: грамматика

Смежные вопросы