Использование sed для консолидации разностного вывода

У меня есть этот результат в результате сравнения файлов с diff :

 < IF-Name :STRING: "lns-wall-01-t2" Index:Gge32: 260 --- > IF-Name :STRING: "lns-wall-01-t2" Index:Gge32: 25 

Мне нужен этот вывод:

 lns-wall-01-t2 old:260 new:25 

Я хочу использовать sed.

  • Каким образом можно фильтровать текстовый файл для удаления пустых строк?
  • Вставить текст в определенные строки файла?
  • Извлечь текст, включая parens
  • Сценарий Bash - части chomp из строки
  • Вставьте новые строки с отсутствующими значениями (NA)
  • Разбор строк файла данных с помощью разделителя Вместо EOL
  • Использование CSV-строки в качестве параметров команды
  • чтение ввода в sed
  • 3 Solutions collect form web for “Использование sed для консолидации разностного вывода”

    С awk :

     awk ' /^</ { old = $NF } /^>/ { str = $4 ; gsub(/"/,"",str) ; printf "%s old:%s new:%s\n", str, old, $NF } ' your_files_list_here 
     sed ' /^</{ # first line formatting s/^.*"\(.*\)".*: /\1 old:/ # append next 2 lines N N # exchange from 2nd line begining till last ":" by "new" s/\n---.*: / new:/ }' "$Rep_Scripts"/diff.txt 

    используйте другой тип выходного сигнала:

     diff -y --suppress-common-lines f1 f2 

    который дает вам более удобный для пользователя формат:

     F-Name :STRING: "lns-wall-01-t2" Index:Gge32: 260 |IF-Name :STRING: "lns-wall-01-t2" Index:Gge32: 25 

    а также

     diff -y ........ | perl -nE '/"(.*?)".*?32:\s*(\d+).*32:\s*(\d+)/ and say "$1 old:$2 new:$3"' 
    Interesting Posts

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

    Как включить файловые системы в / proc / filesystems?

    Перенос Caps Lock для создания

    Как восстановить / usr / etc

    Создавать символические ссылки на внешнем устройстве хранения данных, которое может работать на любых Linux-машинах?

    Как узнать, какая пользовательская конфигурация используется iptables?

    / etc / sudoers – Оскорбления – Как добавить список оскорблений?

    Могу ли я легко найти свою историю на многих экранах?

    Безопасное удаление ОЗУ с помощью sdmem при выключении

    Удалите все слова перед определенным шаблоном, после другого шаблона

    BTX остановился. Когда я пытаюсь установить FreeBSD 10.3 на свой ноутбук, я получил это сообщение:

    не может скопировать более 29 файлов на целевой сервер, используя сценарий оболочки

    Какое самое быстрое решение для виртуализации для Linux?

    Установка протокола gphotofs для установки Android-устройства в режиме PTP

    Расширение параметра в grep

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