shell向数据库批量自动化插入数据

脚本如下

#!/bin/bash

# 向数据库批量自动化插入数据

# 初始化参数
# 数据库名
db_name="test"
# 表名
table_name="server_auth_info"
# 导入文件
import_file="./test.txt"

# 数据导入
cat $import_file |while read line
        do
                server_name=$(echo $line|cut -d " " -f1)
                machine_code=$(echo $line|cut -d " " -f2)
                echo "$server_name: $machine_code"
                /usr/bin/mysql -uroot -p123456 -e "insert into $db_name.$table_name(server_name,auth_code) values('$server_name','$machine_code')";
        done

脚本中插入数据的数据库结构如下

CREATE TABLE `server_auth_info` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `server_name` varchar(50) NOT NULL DEFAULT '',
  `auth_code` varchar(50) DEFAULT NULL,
  PRIMARY KEY (`id`,`server_name`)
) ENGINE=InnoDB AUTO_INCREMENT=39 DEFAULT CHARSET=utf8;

导入文件格式如下

name1 code1
name2 code2
name3 code3

 

你可能感兴趣的:(LinuxShell)