您当前的位置: 首页 >  Python

Python执行 SQL 命令并实时打印输出

发布时间:2022-02-18 17:47:32 ,浏览量:0

需要借助exe_command函数,该函数通过subprocess执行 shell 命令,并实时打印输出。

from subprocess import Popen, PIPE, STDOUT def exe_command(command): """
	执行 shell 命令并实时打印输出
	:param command: shell 命令
	:return: process, exitcode
	""" print(command) process = Popen(command, stdout=PIPE, stderr=STDOUT, shell=True) with process.stdout: for line in iter(process.stdout.readline, b''): print(line.decode().strip()) exitcode = process.wait() return process, exitcode def exe_sql_command(sql_command, redirect=None): """
	执行 hive sql 命令并转储到文件
	:param sql_command: sql 命令
	:param redirect: 是否重定向输出到文件
	:return: process, exitcode
	""" command = "hive -e \"%s\"" % sql_command if redirect: command += f" > {redirect}" return exe_command(command) def exe_sql_file(sql_file, redirect=None): """
	执行 hive sql 文件并转储到文件
	:param sql_file: sql 文件
	:param redirect: 是否重定向输出到文件
	:return: process, exitcode
	""" command = f"hive -f {sql_file}" if redirect: command += f" > {redirect}" return exe_command(command) 
关注
打赏
1688896170
查看更多评论

暂无认证

  • 0浏览

    0关注

    108697博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.4813s