sqlldrで取り込む前にCSVファイルのフィールド数をチェックするためのbash/awkスクリプトメモ。
#!/bin/bash
n=6
{
cat << EOF
111,222,333,444,555,666
111,,,,,
,,,,,666
111,222,333,444,555,666
111,222,333,444,555
EOF
} |\
awk -F, --assign=numfields=$n '{if (NF != numfields) exit 9;}'
if
を使わなくてもパターン指定でフィールド数チェックする下記の書き方も。
awk -F, --assign=numfields=$n 'NF != numfields {exit 9}'