Рекурсивная замена пробелов на подчеркивания в именах файлов и каталогов: различия между версиями
Материал из Linux Wiki
Перейти к навигацииПерейти к поиску
Rain (обсуждение | вклад) м («Рекурсивная вставка подчеркивания вместо пробелов в файлах и папках» переименована в «[[Рекурсивная замена пробелов на подчеркивания �) |
Rain (обсуждение | вклад) (Добавил про типы поиска) |
||
Строка 11: | Строка 11: | ||
</source> | </source> | ||
---- | ---- | ||
Для замены пробелов в именах каталогов сменить '''-type f''' на '''-type d''', либо убрать вообще для замены как в именах файлов, так и каталогов. | |||
[[Category:Sed]][[Category:Bash-скрипт]][[Категория:Скрипт]] | [[Category:Sed]][[Category:Bash-скрипт]][[Категория:Скрипт]] |
Версия 06:28, 19 октября 2008
Скрипт позволяющий рекурсивно заменять пробелы на подчеркивание.
С помощью утилиты find указываем директории в которых хотим работать, while осуществляет циклическое действие, mv переименовывает файлы, echo выводит файлы для работы sed, ну и, собственно, присходит замена.
find path1 path2 -type f | while read file
do
mv "${file}" "$(echo "${file}" | sed -re "s/ +/_/g")"
done
Для замены пробелов в именах каталогов сменить -type f на -type d, либо убрать вообще для замены как в именах файлов, так и каталогов.