shell脚本查询MYSQL数据库并进行相应处理

实际应用中用到利用shell脚本执行一系列与mysql表中数据相关的操作,因此需要将mysql表中数据作为shell脚本参数。shell脚本如下:

hostname=ipaddress
port="3306"
username="abcd"
password="123456"

select_sql="select distinct a,':',b,':',c,';' from a.bc where c='$1'"

#此处采用awk命令去除了标题显示,也可以用${result##*str}方式去除,str为字段最后一个字母
result=`mysql  -h${hostname} -P${port} -u${username} -p${password} -e "${select_sql}" | awk 'NR>1'`
#去除结果字符串中的特殊字符

arr=$(echo $result|tr -d '\n','\t',' ')

#采用参数存储旧的IFS变量,后续会用到

OLD_IFS="$IFS"

#改变IFS变量为查询中每条记录的结尾字符

IFS=";"
arr1=($arr)
IFS=$OLD_IFS
for s in ${arr1[@]}
do
        #echo $s
        OLD_IFS="$IFS"
        IFS=":"
        arr2=($s)

        IFS=$OLD_IFS

#此处即可采用下标进行选取每个字段并进行赋值了。

        echo ${arr2[1]}

done


这个脚本花了快一天才搞定。。。自己水平较low..。。。仅供大家参考。不对之处或有简单方法大家互相交流下。。

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值