VARCHARフィールドを数字でソート(ゼロで埋められる)

VARCHARフィールドを数字でソート(ゼロで埋められる)

私のファイルには次のデータがあります

07020,6880A98805,03/09/2014
04374,6880698805,09/01/2014
05019,6880698805,07/01/2014
05020,2710239905,08/02/2007
05020,2710239905,08/31/2007
05021,2710239905,09/01/2007
05806,2710239905,08/30/2007
05807,8803975905,08/01/2014
05808,8803975905,06/01/2014
06019,6880698805,07/01/2006
06020,6880698805,03/09/2014
07807,8803975905,08/01/2014
13375,3470566899,07/16/2015
13376,3470566899,08/16/2016
058030,6880698805,01/12/201
058030,6880698805,01/12/2015
058030,6880698805,01/12/2015
100004,8803975905,03/09/2014
100005,8803975905,01/01/2015
100006,8803975905,02/01/2015
100007,8626833130,01/16/2016
100031,8803975905,01/12/2015
100031,8803975905,01/12/2015
100031,8803975905,01/12/2015
100032,8803975905,01/01/2015

最初のフィールド(数字)、2番目のフィールド(数字)、3番目のフィールドに基づいてファイルシーケンスをソートしたいと思います。

フォーラムを使って何度も試してみましたが、以下を使用して希望の順序を取得できませんでした。

sort -n -t',' -k1.1n,1.15n -k2.1n,2.10n -k3.7n,3.10n -k3.1n,3.2n -k3.4n,3.5n <file_name.csv>

誰が何が間違っているのか教えてもらえますか?

ベストアンサー1

近づいているようです。ただし、2番目のフィールドは正確に数字ではないため(A最初の行に1つある)、数字で並べ替えることはできません。

これは私にとって効果的です。

sort -t, -k1,1n -k2,2 -k3.7,3.10 -k3.1,3.2n -k3.4,3.5n

おすすめ記事