0
test.sed:sedで複数のパターンを逆にするには?
/^$\([a-z][a-z][a-z]\)$\([0-9][0-9][0-9]\)=\([0-9][0-9][0-9][0-9]\)/p
/^\+1$\([a-z][a-z][a-z]\)$\([0-9][0-9][0-9]\)=\([0-9][0-9][0-9][0-9]\)/p
/^1$\([a-z][a-z][a-z]\)$\([0-9][0-9][0-9]\)=\([0-9][0-9][0-9][0-9]\)/p
file.txtを:私はtest.sedを実行するために使用
$abc$123=1234
1$abc$123=1234
11$abc$123=1234
+$abc$123=1234
++$abc$123=1234
+1$abc$123=1234
++11$abc$123=1234
はコマンド:
sed -n -f test.sed file.txt
出力:を
$abc$123=1234
1$abc$123=1234
+1$abc$123=1234
予想される出力:
11$abc$123=1234
+$abc$123=1234
++$abc$123=1234
++11$abc$123=1234
私は3つのパターンを有する任意の行を取得し、それらを表示しますtest.sed
を作成しました。
私がしたいのは、上記の期待出力に表示されているように、現在のtest.sed
が取り込めない行を含むように、出力を反転することです。
どうすればいいですか?私は/p
の代わりに/!p
をtest.sedの3つのコマンドの最後に置こうとしましたが、多くの重複のため正しく動作しませんでした。
すべての 'p'を' d'に変更し、 'sed -f test.sed'を使用しますか? –
'$ abc $ 123 = 1234'が期待される出力から見逃されているのはなぜですか? – RomanPerekhrest
@ベンジャミンW。どうもありがとうございました!それはうまくいった! – Miku