Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Поиск и замена в sed  (Прочитано 607 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн aadrujinin

  • Автор темы
  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
Поиск и замена в sed
« : 17 Апреля 2018, 13:53:41 »
Добрый день.
Помогите пож.
Имеется некий файл вида -
PrinterEnd=01
ComPort=16
EnableUSB=1
PinpadLog=1
Требуется EnableUSB=1 подставлять там где ComPort= больше 10 и EnableUSB=0 подставлять там где ComPort= меньше или равно 10
Возможно ли это сделать средствами sed?
« Последнее редактирование: 17 Апреля 2018, 14:05:32 от Azure »

Оффлайн Azure

  • Модератор раздела
  • Старожил
  • *
  • Сообщений: 6017
  • Windows10, i3wm on Debian9, Manjaro20.0
    • Просмотр профиля
Re: Поиск и замена в sed
« Ответ #1 : 17 Апреля 2018, 14:14:26 »
Вообще для сравнения чисел использовать проще awk, но в данном случае можно и sed sed '/ComPort=/!b;N;/\([0-9]\|10\)\s*\n/s/[10]\s*$/0/;t;s/0\s*$/1/'
« Последнее редактирование: 17 Апреля 2018, 14:16:34 от Azure »
В Линукс можно сделать ВСЁ что угодно, достаточно знать КАК !

 

Страница сгенерирована за 0.079 секунд. Запросов: 25.