私の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
答え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
/に変換してください。OUT
capitalize
toupper