Решения тех проблем, с которым мне приходилось сталкиваться.

суббота, 27 октября 2007 г.

переименовать группу файлов

Предыстория. Чтобы читать электронные книжки на портативном устройстве я распаковываю chm в html (пакет libchm-dev, команда extract_chmLib). Часто получаемые HTML файлы имеют извращенческий префикс в имени, вида _12345ABCDE_toc.html. Меня это не устраивает и поэтому перед копированием в КПК я делаю так:


rename 's/_12345ABCDE_//g' *.html
А потом и меняю ссылки внутри файлов:

sed -i 's/_12345ABCDE_//g' *.html
UPD: Увидел на одной сайте целый скрипт на шелле, выполняющий единственную функцию - преобразующий имена всех файлов текущей директории в нижний регистр. Я подумал, что наверняка rename это уже умеет. Я оказался прав - вот решение:

rename 'y/[A-Z]/[a-z]/' *
Юзается команда "трансляции" (y), которую в том числе поддерживает и sed.

Комментариев нет: