shell脚本调用python脚本,获取python返回值并且做字符串的切分

#!/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

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值