在作为cron作业运行时,在Python脚本中使用Popen将文件移动到HDFS时出错

时间:2015-09-30 23:00:41

标签: python hadoop cron subprocess

我有一个Python脚本,使用以下命令将文件从服务器移动到HDFS:

from subprocess import Popen
.
.
filename = "/home/user123/test.csv"
put = Popen(["hadoop", "fs", "-put", filename, "/data/test"])  

当我在服务器上运行脚本时,该脚本运行正常,但当我将其作为cron作业运行时,它会失败并显示以下消息:

OSError: [Errno2] no such file or directory
.
.
  File "/opt/anaconda/lib/python2.7/subprocess.py", line 710, in __init__
    errread, errwrite)
  File "/opt/anaconda/lib/python2.7/subprocess.py, line 1335, in _execute_child 
    raise child_exception

我尝试更换" hadoop"用" / usr / bin / hadoop"但我仍然得到一个"没有这样的文件或目录"错误。我认为这是一个环境变量问题,但有没有办法解决它?

0 个答案:

没有答案