Печать строки на своем собственном месте в оболочке Unix

Печать строки на своем собственном месте в оболочке Unix

Я пытаюсь распечатать содержимое текстового файла (на самом деле его строки). Я знаком с некоторыми командами, такими как grep, awk, sed; Я хочу принудительно вывести echoстроку на ее исходное место в файле и не могу. Вы понимаете??

Пример:

Ниже приведена часть строкового файла:

Это текстовый файл, полный строк...

Теперь я хочу напечатать слово textна bash, но не в начале строки. Я хочу напечатать на своем месте, вот так:

--------text---------------------------------

И без тире. Как мне это сделать?

решение1

Может быть, что-то вроде этого?

$ echo 'This is a text file full of strings...' | 
    perl -pe 's/(^.*)(text)(.*$)/sprintf "%*s", length($1)+length($2), $2/e'
          text

т.е. вывести совпадающую строку в поле шириной, равной сумме ее ширины и ширины префикса.

Связанный контент