[英]Sorting through shell, awk, bash?
我正在嘗試學習bash / shell * nix命令/腳本。 因此,除了編寫python程序外,我還想使用bash / awk等進行嘗試,但遇到了麻煩。 我有一個很大的文本(實際上是csv)文件
id_1, id_2, some attributes.
我想根據id2對該文件排序? 我該怎么做呢? 謝謝
使用--key
選項進行sort
。
例如,以下input.csv
在第二個字段上對input.csv
進行排序(使用逗號作為字段分隔符),並將輸出寫入output.csv
。
sort --key=2,2 -t',' input.csv > output.csv
ps如果要進行數字排序,請不要忘記使用-n
選項。
有關更多信息,請參見手冊頁進行排序 。
您可以使用sort(1)的 -k選項
-k,--key = POS1 [,POS2]
start a key at POS1, end it at POS2 (origin 1)
sort -t, -k2 filename.csv
我沒有要驗證的外殼,但是基本上您需要指定分隔符和排序鍵
簽出命令剪切:
cat file.cvs | cut -d";" -f 2 | sort
我假設您的csv是用分號分隔的,但是您可以更改它。
保存為其他名稱:
cat file.cvs | cut -d";" -f 2 | sort > newfile.txt
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.