Unix シェルで文字列を独自の場所に印刷する

Unix シェルで文字列を独自の場所に印刷する

grepテキスト ファイルの内容 (実際には文字列) を印刷しようとしています。 、、などのコマンドはよく知っていますがawk、文字列をファイル内の元の場所にsed強制的に配置したいのですechoが、できませんでした。わかりますか??

例:

以下は文字列ファイルの一部です。

これは文字列がいっぱいのテキスト ファイルです...

ここで、bash に単語を印刷したいのですtextが、行の先頭には印刷しません。次のように、独自の場所に印刷します。

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

ダッシュなしでどうすればいいですか?

答え1

こんな感じでしょうか?

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

つまり、一致する文字列を、その幅とプレフィックスの幅の合計に等しい幅のフィールドに出力します。

関連情報