Sedで "]"の後の1行のすべての文字を削除する方法
私は猫、awkを使用していくつかのファイルをgrepしようとしています。今私のワンライナーは私に何かを返します
121.122.121.111] other characters in logs from sendmail.... :)
ここで、 "]"の後の文字( "]"付き)をすべて削除します。 121.122.121.111
私の出力。
私はその特定のsedの例を探していましたが、それらの例では何の助けも見つかりませんでした。
echo "121.122.121.111] other characters in logs from sendmail...." | sed 's/].*//'
だからあなたがそのような行でいっぱいのファイルがあるなら、あなたはすることができます
sed 's/].*//' filename
代わりにcut
はどうですか:
cat logfile | cut -d "]" -f1
何かのようなもの
_sed 's|\(.*\)\] .*$|\1|'
_
あなたがしたいことをする必要があります。 \(.*\)]
は、_]
_までのすべてのテキストを記憶されたパターンにキャプチャし、_\1
_はそれを行全体の代わりに使用します。