サンプルファイル
a.b.gg3d 0000000001 0000000001 y
a.b.112a 0000000000 0000000001 y
a.b.gg3s 0000000001 0000000001 y
a.b.1111 0000000000 0000000001 m
上記の例に似た約3,000本の一意の行を含むファイルがあります。 sedを使用して各行から「xxxxxxxxx xxxxxxxxxx」数を削除したいと思います。上記の例を使用して、sedスクリプトに次の出力を生成させます。
a.b.gg3d y
a.b.112a y
a.b.gg3s y
a.b.1111 m
どうすればいいですか? sedに、「最初のスペースの後のすべての数字を削除し、最後の文字を保持します」と指示するコマンド文字列はありますか?
ベストアンサー1
この入力が与えられたら、最初のフィールドと最後のフィールドを維持したいと思います。 awkを使うのはとても簡単です。
awk '{print $1, $NF}' filename
sedを使用すると、スペースで区切られたすべての数字のみの単語が置き換えられます。
sed ':a; s/ [[:digit:]]\+ / /; ta'