Шпаргалка по типу sed:
Наиболее часто используемые символы, используемые в команде sed, описаны в следующей таблице.
Персонаж | Цель |
а | Он используется для добавления контента. |
б | Используется для разветвления контента. |
c | Используется для изменения контента. |
d | Используется для удаления строки файла. |
D | Используется для удаления первой строки файла. |
грамм | Раньше он копировал из удерживаемого текста. |
грамм | Он используется для добавления из удерживаемого текста. |
час | Он используется для копирования в удерживающем тексте. |
ЧАС | Он используется для добавления к удерживаемому тексту. |
я | Используется для прошивки. |
я | Используется для печати заменяющей строки. |
п | Используется для перехода на следующую строку. |
N | Используется для добавления следующей строки ввода. |
п | Используется для печати. |
п | Используется для печати первой строки. |
q | Используется, чтобы бросить. |
Q | Используется для немедленного выхода. |
р | Используется для чтения файла. |
р | Используется для чтения строки из файла. |
s | Используется для замены. |
т | Используется для проверки на замену. |
Т | Он используется для проверки отсутствия замены. |
ш | Используется для записи в файл. |
W | Используется для записи строки в файл. |
Икс | Он используется для обмена узорами и удержания. |
у | Он используется для перевода. |
z | Используется для очистки линии. |
знак равно | Используется для печати номера строки. |
Замените несколько строк с помощью команды sed из терминала:
В этой части этого руководства показано, как можно использовать команду sed для замены нескольких строк из файла из терминала. Создайте файл с именем sed.текст со следующим содержимым проверьте команды этой части.
sed.текст
Полная форма sed - это «редактор потока».
Это утилита Unix, которая используется для чтения и преобразования текста в другой формат.
Он был разработан Lee E. МакМахон.
Используется для обработки текста.
Поддерживает регулярные выражения.
Пример-1: замена двух последовательных строк
Следующая команда sed заменит две последовательные строки другой строкой. Здесь параметр -z используется для замены последовательных строк нулевыми данными перед добавлением заменяющего текста. Согласно команде, 3rd и 4th строки файла будут заменены на текст, «Это очень полезный инструмент».
$ cat sed.текст$ sed -z 's / Он был разработан Lee E. МакМахон.\ nОн используется для текста
обработка./ Это очень полезный инструмент./ 'sed.текст
Следующий вывод появится после выполнения команд.
Пример-2: замена нескольких строк на основе совпадения и глобального флага
Следующая команда sed заменит все строки, начинающиеся со слова, 'Это' к слову, 'Эта строка заменена '.
$ cat sed.текст$ sed 's / ^ Это.* / Эта строка заменена / g 'sed.текст
Следующий вывод появится после выполнения команд. В трех строках содержится слово 'Это'в файле. Итак, эти строки были заменены заменяющим текстом.
Пример-3: замена нескольких строк на основе команды соответствия и следующей строки
Следующая команда 'sed' заменит слово 'являетсяк слову,было'с командой следующей строки' n '.
$ cat sed.текст$ sed 'n; / is / s / is / was /' sed.текст
Следующий вывод появится после выполнения команд. Здесь, 'является' существует в 2nd и 4th строки файла, и эти строки изменяются словом 'было'.
Замените несколько строк, создав файл сценария sed:
В предыдущих примерах команды sed выполнялись с терминала. Но это язык сценариев, и если сценарий содержит несколько операторов, то лучше создать файл sed со сценарием. Создайте текстовый файл с именем студенты.текст со следующим содержимым, в котором будет применен сценарий 'sed'.
студенты.текст
ID: 111045Имя: Роберт
Отдел: CSE
Партия: 35
ID: 111876
Имя: Джозеф
Отделение: BBA
Партия: 27
ID: 111346
Имя: Уильям
Отдел: CSE
Серия: 45
ID: 111654
Имя: Чарльз
Отдел: EEE
Партия: 41
ID: 111346
Имя: Джон
Отдел: CSE
Партия: 25
ID: 111746
Имя: Томас
Отдел: CSE
Партия: 15
Пример-4: замена нескольких строк файла с помощью файла сценария sed
Создайте файл sed с именем заменять.sed со следующим содержимым для замены нескольких строк на основе шаблона поиска. Здесь слово 'CSE'будет выполняться поиск в текстовом файле, и, если совпадение существует, он снова будет искать числа 35 и 15. Если второе совпадение существует в файле, то оно будет заменено числом 45.
заменять.sed
/ CSE /п; п;
/ 35 /
s / 35/45 /;
p; d;
/ 15 /
s / 15/55 /;
p; d;
п;
Выполните следующую команду, чтобы проверить существующее содержимое файла. "CSE" появилось в текстовом файле четыре раза. 35 и 15 существуют в двух местах.
$ cat студенты.текст
Следующая команда заменит содержимое нескольких строк на основе сценария sed.
$ sed -n -f заменить.студенты sed.текстСледующий вывод появится после запуска команды.
Заключение
В этом руководстве были показаны различные способы замены нескольких строк или содержимого нескольких строк с помощью команды sed. В этом руководстве также показано, как сценарий 'sed' может быть запущен из файла sed. Я надеюсь, что это руководство поможет читателю заменить несколько строк любого файла с помощью команды sed.