问题处理,我们在抽取数据时利用/x02作为换行符,接着利用sed命令来将文件中/n替换成空格
sed -i ':a;N;s/\n/ /g' file_name
处理时发现文件过大,一次处理并不能将/n处理干净,因此利用脚本多次处理
#!/bin/sh
handle_file=$1
echo "程序开始执行"
date "+%Y-%m-%d %H:%M:%S"
num=`cat $handle_file|wc -l`
echo $num
#num=1088
sed -i 's/\r/ /g' ${handle_file}
echo $num
while (($num))
do
num=$((num/2))
echo $num
sed -i ':a;N;s/\n/ /g' ${handle_file}
done
sed -i ':a;N;s/\n/ /g' ${handle_file}
wc -l ${handle_file}
sed -i 's/\x02/\n/g' ${handle_file}
wc -l ${handle_file}
echo "程序执行结束"
date "+%Y-%m-%d %H:%M:%S"