将不同年份目录下的csv文件导入到mysql库表中:
执行 find ,获取存放目录:
./2020
./2020/202008.csv
./2020/202009.csv
./2020/202002.csv
./2020/202011.csv
./2020/202005.csv
./2020/202001.csv
./2020/202012.csv
./2020/202003.csv
./2020/202004.csv
./2017
./2017/201707.csv
./2017/201709.csv
./2017/201702.csv
./2017/201706.csv
./2017/201708.csv
./2017/201701.csv
./2017/201712.csv
./2017/201705.csv
./2017/201710.csv
./2017/201703.csv
./2017/201704.csv
./2017/201711.csv
批量的将文件夹下的csv文件导入到
#!/bin/bash
for j in `ls -1 /zmh/rs31/`
do
if [[ -n "${j}" ]];
then
echo 目录不为空,执行该目录下面的文件。该目录的名称为:${j}。
for i in `ls -1 /zmh/rs31/${j}`
do
if [[ -n "${i}" ]];
then
echo 存在文件。该目录的名称为:${i}。
chmod a=rwx /zmh/rs31/${j}/${i}
sed -i "s/=//g" /zmh/rs31/${j}/${i}
sed -i "s/\"//g" /zmh/rs31/${j}/${i}
i1=`echo ${i} | cut -d. -f1`
echo "load data local infile '/zmh/rs31/${j}/${i}' into table rs31 fields terminated by ',' lines terminated by '\r\n' ignore 1 lines (姓名,性别,户口所在区(街),原单位组织机构代码,原单位名称,应享受期限(月),已享受月数,本次剩余可享受月数,停发月数,待遇开始领取时间,待遇终止时间,待遇享受状态,停发原因,停发年月,失业保险待遇核定类别,经办人,经办机构,经办日期);" > /zmh/rs31/${j}/${i1}.sql
mysql -uroot -p123456 -D rsb --local-infile=on < /zmh/rs31/${j}/${i1}.sql
# mysql -uroot -p123456 -D rsb --local-infile=on -N -e "load data local infile "'"/zmh/rs31/${j}/${i}"'" into table rs31 fields terminated by ',' lines terminated by '\r\n' ignore 1 lines (姓名,性别,户口所在区(街),原单位组织机构代码,原单位名称,应享受期限(月),已享受月数,本次剩余可享受月数,停发月数,待遇开始领取时间,待遇终止时间,待遇享受状态,停发原因,停发年月,失业保险待遇核定类别,经办人,经办机构,经办日期);"
else echo 不存在文件了,结束。
fi
done
else echo 目录为空,结束!
fi
done