#!/usr/bin/python
# coding=utf-8
import sys
import pymysql
#pymysql连接mysql
def getmsg():
sysconn = pymysql.connect(
host='192.168.1.3',
port=3306,
user='xxx',
password='123123',
db='xxx_table',
charset='utf8'
)
#sql语句的拼接
read_sql = "select concat(db_name,'.',tabname) from sys_table where is_change=0"
#获取数据库游标cursor
cur = sysconn.cursor()
#mysql执行sql
cur.execute(read_sql)
#获取返回的结果
all_talbes = cur.fetchall()
#将所有的table拼成一个长串返回
modify_table_string = ""
for curr_table in all_talbes:
modify_table_string = curr_table[0]+";"+modify_table_string
return modify_table_string
if __name__ == '__main__':
tbset = getmsg()
print(tbset)
#!/bin/bash
#shell接收python脚本返回的字符串
table_string=`python3 /home/user/data/read_tag.py`
#echo "----从python接收过来的参数---->${table_string}"
i=0
while((1==1))
do
((i++))
#将table_string按照‘;’进行切分,取第i个显示
#cut命令 -d:指定字段的分隔符,默认的字段分隔符为“TAB”;
#cut命令 -f:显示指定字段的内容;
split_c=`echo $table_string|cut -d ";" -f$i`
if [ "$split_c" != "" ] #当被分割的split_c不为空字符串时
then
echo "---shell字符切分--->${split_c}"
else
break
fi
done
以上分别是 read_tag.py 与 read_tag.sh的内容,read_tag.sh 调用 read_tag.py