从python运行外部sqoop命令

e3bfsja2  于 2021-06-03  发布在  Sqoop
关注(0)|答案(0)|浏览(326)

我可以从终端运行此命令:

sqoop import --connect jdbc:postgresql://localhost:5432/eco --table sso_user --username user --password pwd --target-dir /hoy/ecoid --direct --m 5 --map-column-java newsdata=String --map-column-hive newsdata=STRING

而且效果很好。但当我尝试时:

cmd = 'sqoop import --connect jdbc:postgresql://localhost:5432/eco --table sso_user --username user --password pwd --target-dir /hoy/ecoid --direct --m 5 --map-column-java newsdata=String --map-column-hive newsdata=STRING'
exec cmd

我得到: Syntax error ```
os.system(cmd)

我得到: `sh: 1: sqoop: not found` 最后,如果我尝试:

subprocess.call(cmd)

我得到: `/bin/sh: 1: sqoop: not found` 但是!在python shell中尝试时:

$ python

import os
os.system('sqoop import --connect jdbc:postgresql://localhost:5432/eco --table sso_user --username user --password pwd --target-dir /hoy/ecoid --direct --m 5 --map-column-java newsdata=String --map-column-hive newsdata=STRING')

真管用!
我认为问题与输出有关,但我不确定。
谢谢你的阅读和帮助!

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题