複数の列を psv ファイルから Excel ファイルにコピーする

複数の列を psv ファイルから Excel ファイルにコピーする

私のPSVファイルは次のようになります

Column1|Column2|Column3
Web_Value_in_file|123|OLA
Tab_Value_out_file|453|OLA

ソース列とターゲット列が異なります。_ 区切り文字を使用して、ターゲットの列 1 から複数の列に値をカットします。出力ファイルは Excel(.xlsx) のようになります。

Column1 Column2 Column3
Web     In      123
Tab     Out     453

答え1

あなたが探しているのはこれだと思います:

column -s '|' -t file

どのフィールドにもパイプ文字が埋め込まれていないと仮定します。一般的なCSVデータの解析には、csvキット

答え2

比較的新しいバージョンのミラー

$ ~/src/miller/c/mlr --csvlite --ifs '|' --ofs tab put '
    x = splitnv($Column1,"_"); $Column3 = $Column2; $Column2 = capitalize(x[3]); $Column1 = x[1]
  ' then cat file.psv
Column1 Column2 Column3
Web     In      123
Tab     Out     453

古いバージョンの Miller では、この関数を使用できない可能性がありますcapitalize。小文字のin/をそのまま使用するか、を に置き換えてoutすべて大文字のIN/に変換してください。OUTcapitalizetoupper

関連情報