# 用0来替换第一个字段的NULL值,把^|替换成0|
# 用0来替换中间字段的NULL值, 把||替换成|0|
# 用0来替换最后一个字段的NULL值,把|$替换成|0
for s_f in `ls $DATA_DIR/*dat`
do
echo "$s_f"
i=1
while [ `egrep '\|\||^\||\|$' $s_f |wc -l` -gt 0 ]
do
echo $i
sed 's/^|/0|/g;s/||/|0|/g;s/|$/|0/g' -i $s_f
((i++))
done
done
#把date字段的0值替换成 0000-00-00
for s_f in $DATA_DIR/item.dat $DATA_DIR/store.dat $DATA_DIR/web_page.dat $DATA_DIR/web_site.dat $DATA_DIR/call_center.dat
do
# 处理第一、第二个date都是NULL的
sed 's/^\([A-Za-z0-9]*|[A-Za-z0-9]*\)|0|0|\(.*\)/\1|0000-00-00|0000-00-00|\2/' -i $s_f
# 处理第二个date是NULL的
sed 's/^\([0-9A-Za-z]*|[A-Za-z0-9]*|[0-9]\{4\}-[0-9]\{2\}-[0-9]\{2\}\)|0|\(.*\)/\1|0000-00-00|\2/' -i $s_f
# 处理第一个date是NULL的
sed 's/^\([0-9A-Za-z]*|[A-Za-z0-9]*\)|0|\([0-9]\{4\}-[0-9]\{2\}-[0-9]\{2\}|.*\)/\1|0000-00-00|\2/' -i $s_f
done