「Linuxの」という表現だけではシェルなのか vim なのか、perl なのか回答に困ります。
また「抽出」をどの様にしたいかが指定されていないので、こちらも回答し辛いのですが、入力のテキストから <xxx> の中身だけを抜き取って CSV 形式にするという回答にしてみました。
cat input.txt | sed 's/^[^<]*<//' | sed 's/>[^<]*</,/g' | sed 's/>[^<]*$//'
このコマンドは2つの sed コマンドで成り立っていて、最初の sed は先頭から初めての < までを、2番目の sed は > から < までを、最後の sed は > から終わりまでを削除しています。
[^>] は > でない文字を表すので、最初の sed は「< でない文字を全て削除」、2番目は「> で始まって < でない文字が0個以上続き < までを削除」、最後は「> で始まって < でない文字が終わりまで続く(0個以上)」となります。
2016/12/16 09:04