ちょっとしたcsvファイルをソートする際、ヘッダーである1行目はそのままに中身だけソートする必要があったので、ちょっと調べてみた。 で、以下のようにすることで1行目の位置はそのままにソートが可能なので、備忘として残しておく。 awk 'NR==1;NR>1{print $0|"sort"}' awk 'NR==1;NR>1{print $0|"sort -1krn"}' # 例1) 1列目で数字の降順 awk 'NR==1;NR>1{print $0|"shuf"}' # 例2) ヘッダー以外の行でシャッフル blacknon@BS-PUB-DEVELOP:~$ cat test1.csv header1,header2,header3,header4,header5 Q1,Q2,Q3,Q4,Q5 N1,N2,N3,N4,N5 Y1,Y2,Y3,Y4,Y5 D1,D2,D3,D4,D5 W