0

unix sort コマンドを使用して csv ファイルをソートしたいのですが、列が行ごとに異なる場合がありますが、最後から 3 番目の列は同じままです。このファイルに unix sort コマンドを実装するにはどうすればよいですか??

sort -t"," -k? を試しました。ファイル名.csv

しかし、最後からではなく最初からの列の番号になるため、kで何を入力すればよいかわかりませんでした

サンプルデータ

"Hotel_Dom","4STRAVELCOMPANY@GMAIL.COM","4STRAVELCOMPANY@GMAIL.CO","NH57014106349",1280082600,"B2B","10037"
"Hotel_Dom","68MHOSPITALITY@GMAIL.COM","68MHOSPITALITY@GMAIL.COM","NH5520894246",1280023222,"B2B","1670"
"DF","00000000@11111.COM","FLTINT1000130394756","12800231456","B2C","6799.2"
"Rail","00000.POO@GMAIL.COM","NR251764697478",1280084511,"B2C","2025"

今、私はUNIXソートコマンドを使用して日付に従ってソートしたいので、エポック以来日付を時刻に変換しましたが、私のcsvでは開始列の数が異なるため、常に日付である最後から3行目にソートを適用したい

4

1 に答える 1

2
awk -F, '{print $(NF-2)FS$0}' filename.csv | sort -n |  sed 's/^[^,]*,//'

これがうまくいくことを願っています +

于 2013-04-20T12:51:03.497 に答える