awk
抽取csv的某列:
awk -F '","' -v OFS=',' '{print $5,$4,$6,$7 }' a.csv > a1
抽取f1的col 1, f2的col 2,輸出。
缺點:需要將f1的col 1先全部讀入內存,若f1很大,耗內存,而且不知道數組a的結構。
awk -F '","' -v OFS=',' 'NR==FNR{a[NR]=$1;next} {print a[FNR],$2}' f1 f2
對文件第n行的操作
刪除文件 f 的第1行(比sed快很多很多):
tail -n +2 f> f.tmp && mv f.tmp f
打印文件 f 的第 19103 行:
sed "19103q;d" f