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


Увидели сообщение с непонятной ссылкой, спам, непристойность или оскорбление?
Воспользуйтесь ссылкой «Сообщить модератору» рядом с сообщением!

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

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

Оффлайн aadrujinin

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

Оффлайн Azure

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

 

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