問題があります。私の文字列は単一の文字列ではありません。 sedではうまくいきますが、awkではありません。
awkを使用してすべての文字列をグループ化する方法は?" "
、with、およびwithで{ }
文字列をカプセル化しようとしましたが、( )
何も機能しませんでした。以下はsedとawkの例です。
sed -n '/show system | inc Software/,/sh syst | i @@@@@/p' filename.txt > out_file.txt
この行はsedと完全に機能します"show system | inc Software"
。"sh syst | inc @@@@@"
awkの場合は動作しません。
awk '/show system | inc Software/,/sh syst | i @@@@@/' filename.txt > out_file.txt
出力ファイルが期待したものとは異なります。この文字列がこのコマンドで機能するようにするにはどうすればよいですか?
答え1
入力データと期待される出力データを含めることで、質問を理解しやすくなります。
次のawk
コマンドは 'show system | inc Software'と'sh syst i @@@@@'行とその間のすべての行を印刷します。
awk '/show system \| inc Software/,/sh syst \| i @@@@@/{n=0}' filename.txt > out_file.txt
編集する:
また、あなたのコマンドが機能していないようですsed
。 (あなたの質問を理解したと仮定します。)
sed -n '/show system | inc Software/,/sh syst | i @@@@@/p' filename.txt > out_file.txt