タブ限定ファイルをレコードの5番目のフィールドで降順にソートしたい。
私は試した
sort -r -k5n filename
しかし、うまくいきませんでした。
n
に付加されたオプションが存在すると、そのフィールド-k5
のグローバル-r
オプションが無視されます。と の両方n
をr
同じレベル (グローバルまたはローカル) で指定する必要があります。
sort -t $'\t' -k5,5rn
また
sort -rn -t $'\t' -k5,5
5 番目のフィールドだけを並べ替えたい場合は、 を使用します-k5,5
。
また、 -t
コマンド ライン スイッチを使用して、区切り文字を に指定しますtab
。これを試して:
sort -k5,5 -r -n -t \t filename
または、上記が機能しない場合 ( でtab
) これ:
sort -k5,5 -r -n -t $'\t' filename
ソートのマニュアルページには次のように記載されています。
-t, --field-separator=SEP 非空白から空白への遷移の代わりに SEP を使用します
最後に、この SO question Unix Sort with Tab Delimiterが役立つ場合があります。
サイズに基づいて昇順でファイルを一覧表示します。
find ./ -size +1000M -exec ls -tlrh {} \; |awk -F" " '{print $5,$9}' | sort -n\