- CSV の列数をカウントする
perl -F, -lane 'printf("%s:%d\n",$ARGV,$#F);$.>0 and close ARGV' *.csv 200911.csv: 21 200912.csv: 21 201001.csv: 21 201002.csv: 21
- CSV の任意の列を頭0埋めする
# ヘッダ(1行目)を削除する # 1列目、11列目の頭を12桁で0埋めする # 3列目の頭を9桁で0埋めする perl -F, -lane 'if($.>1){$F[0]=sprintf("%012d",$F[0]);$F[2]=sprintf("%09d",$F[0]);$F[10]=sprintf("%012d",$F[10]);print join(",",@F)};eof and close ARGV' *.csv
- CSV の任意の列のみ抽出する
# 1列目、3列目、11列目以外を抽出する perl -i -F, -lane 'print join(",",@F[1,3..9,11..$#F])' *.csv