LINUX.ORG.RU

Необходимо вставить в конец названия фаила, найденного по фильтру произвольную букву

 ,


0

0

Нужно найти все фаилы содержащие букву а в своем названии , затем в конец названия каждого из них нужно вставить любую букву . Пример grad.txt -> grad1.txt graad.txt -> graad1.txt

Циклом for перебираешь файлы найденные grep'ом, sed'ом или cut'ом добавляешь букву в конец названия. И да, в твоём примере первый раз в середине вставлено.

IPR ★★★★★ ()

помагаю

  • ты отписался сообщений в теме: это невежливо с твоей стороны. и плохо для тебя: зачем тебе помогать если, тема тебе не интересна
  • чётче сформулируй свою задачу: найти все файлы <где> (в текущей директории, домашнем каталоге пользователя, ...) в имени, которых содержится символ 'a' и переименовать эти файлы по шаблону <имя файла>+<любая буква>. твоих примерах используется цифра 1 (будет использован один символ при «создании» нового имени или необходимо использовать разные)
  • как должно выглядеть решение задачи: список команд, скрипт, ...
anonymous ()
Ответ на: комментарий от Vsevolod-linuxoid

Эм... а не проще ли использовать exec в find для этого?

Личная неприязнь к find'у, не обращай внимания.

IPR ★★★★★ ()
find foo -type f -exec rename -n 's/([^.]+)/$1_1/' {} \;
foo/bar.tar.gz renamed as foo/bar_1.tar.gz
foo/bar/graad.txt renamed as foo/bar/graad_1.txt
foo/grad.txt renamed as foo/grad_1.txt

Как вставить цифру сразу после номера группы, извини, не знаю.

ivn86 ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.