Подтверждение LVM без установки Ubuntu

Даже если вам не нравятся седые sed и perl, вы все равно можете найти симпатию к серому awk. Этот ответ кажется тем, что вы ищете. Я воспроизвожу его здесь. Скажем, у вас есть три файла и вы хотите заменить needle на replacement в haystack:


awk ' BEGIN { RS="" }
      FILENAME==ARGV[1] { s=$0 }
      FILENAME==ARGV[2] { r=$0 }
      FILENAME==ARGV[3] { sub(s,r) ; print }
    ' needle replacement haystack > output

. Это не связано с регулярными выражениями и поддерживает символы новой строки. Кажется, он работает с достаточно большими файлами. Это связано с разрывом всего файла в памяти, поэтому он не будет работать с файлами произвольного размера. Если вы хотите, чтобы он был более изящным, вы можете вложить весь shebang в сценарий bash или превратить его в скрипт awk.

1
задан 13 April 2017 в 15:14

0 ответов

Другие вопросы по тегам:

Похожие вопросы: