bash заменить часть строки на основе местоположения

К сожалению, я искал решение для одной строки (как предложение bash), чтобы заменить часть имени файла.

Учитывая, что в папке есть последовательность изображений, например

ve2_sq021_sc001_v000.0101.jpg ve2_sq021_sc001_v000.0102.jpg ve2_sq021_sc001_v000.0103.jpg ve2_sq021_sc001_v000.0104.jpg 

Нужно заменить только v000 на v09 (скажем). Как это возможно (по всему каталогу).

2 Solutions collect form web for “bash заменить часть строки на основе местоположения”

Если вы установили rename команды unix, вы можете сделать это тривиально следующим образом:

 $ rename v000 v09 *.jpg $ ls -1 ve2_sq021_sc001_v09.0101.jpg ve2_sq021_sc001_v09.0102.jpg ve2_sq021_sc001_v09.0103.jpg ve2_sq021_sc001_v09.0104.jpg 

ПРИМЕЧАНИЕ. Это использование rename которое включено в пакет util-linux .

 for f in $(ls ve2*); do mv $f $(echo $f | sed s/v000/v09/g ); done 

Если вы хотите сделать его рекурсивным, вы можете использовать find вместо ls ve2 *

  • Справка по редактированию инструкции sed
  • awk или sed в нижнем регистре / в верхнем регистре только один символ в строке?
  • Печатать строки файла между двумя шаблонами соответствия
  • Нужно преобразовать столбец timestamp unix epoch в каждую строку с помощью sed или awk
  • Отменить перемещение букв с помощью sed
  • Как добавить строку к предыдущей строке?
  • Учебный материал Sed and Awk
  • Разделить файл на строки на основе значений столбцов
  • Игнорировать разделитель, присутствующий внутри кавычек
  • Awk и отбрасывание несовпадающих токенов в строке?
  • Удаление последнего символа одним словом, но только если символ присутствует - в bash
  • Обратный grepping
  • Interesting Posts

    Virtualbox: установите общую папку в гостевой FreeBSD из Host Ubuntu

    Команда dd: поиск скорости чтения / записи для вспышки / SD?

    Путаница в команде cp при создании нового каталога

    Нужна помощь Установка Macpup на старый MacBook 4.1. Где я иду Неправильно?

    Как извлечь образ файловой системы из vmlinux.bin?

    rsync без подсказки для пароля, используя sshpass, как это небезопасно?

    Конфликт в управлении wlan0 на ArchLinux

    Gmail мгновенный новый почтовый уведомитель для систем Debian 7?

    распечатать все значения файла после удаления некоторых символов с помощью grep

    Почему Linux не удаляет маршрут из таблицы маршрутизации, если интерфейс физически отсутствует?

    стабильные, стабильные / обновления и стабильные обновления в sources.list

    Как искать историю консоли XTerm?

    rsync bash скрипт "не удалось установить"

    Чтение файла и совпадение с именем файла

    Gnome 3 сбой при создании нового ключа пароля

    Linux и Unix - лучшая ОС в мире.