sed: какой шаг выводит эхо с / без -n - PullRequest
0 голосов
/ 24 октября 2019

Когда sed вызывается без аргумента -n, какой буфер печатается на следующем рисунке? Если нет на этой картинке, можете ли вы описать, какой буфер печатается? У меня такой же вопрос с аргументом '-n'.

Спасибо

enter image description here

Ответы [ 2 ]

1 голос
/ 24 октября 2019

Поведение по умолчанию sed заключается в печати пространства шаблона после выполнения любого сценария (третье поле сверху в среднем столбце на рисунке). При -n эта операция печати по умолчанию отключена. Если не существует сценария, который изменяет пространство шаблона, он будет содержать текущую строку ввода (первое поле).

Считать Line 1 в пространство шаблона. (Нет сценария.) Распечатать пространство шаблона. Выход: Line 1. Пустое пространство шаблона.

Считайте Line 2 в пространство шаблона. (Нет сценария.) Распечатать пространство шаблона. Выход: Line 2. Пустое пространство шаблона.

И т. Д. До тех пор, пока не произойдет сбой чтения, поскольку в файле больше нет данных.

0 голосов
/ 24 октября 2019

Печать 'sed' (неявная или явная с -n) будет печатать пространство шаблона. Из информационной страницы sed:

'p'
     Print the pattern space.

'P'
     Print the pattern space, up to the first <newline>.

...