2016-05-31 4 views
-1

を持つ2本のラインを組み合わせますか?は、私はcsvファイルから2行をマージしたいbashの

編集: 私はX出現の多くの組み合わせ(X ,,または、X、X ...)

を持っている私はあなたの他の例を与えます。ファイルの最初の列にはLinuxディストリビューション名が、2番目の列にはコマンドが、3番目の列に "x"がある場合はcentos 5で、4番目の列に "x"がある場合はcentos 6に、 「x」は最後のフィールドである場合、それはそれはCentOSの7

centos,ls,,,x 
centos,ls,x,x, 

そして今、私は、コマンドについての情報を要約します一つのレコードを持ちたいで利用可能であることを意味します。

+0

を、唯一の2行を含むファイルがありますか?各レコードはどのように分かれていますか? – sjsam

+0

ファイルには、 "x"という異なる位置の行が多数含まれていますが、2つの行を同時に比較したいと思います。 – user3461823

+0

2行ではなく、予想される入出力のより大きな部分を見ると便利です。 –

答えて

1

これを試してみてください。また、

sed ':a;$!N;s/,$//;s/^,//;s/\n//g;ta;s/,,*/,/g' file 
+0

ありがとうKenavozそれは非常に良い作品! – user3461823

+0

このスクリプトは現時点ではマージを全く行いません。 –

+1

@sjsamあなたが正しいです、私はサンプルコードを編集しようとしませんでした。私は更新しました。 – SLePort

関連する問題