首页 > 解决方案 > scp 来自 Debian 中 Python 的目录

问题描述

我正在尝试运行我家中所有 Debian 计算机的脚本/home/script文件,当我调用 MPI 在所有机器上运行它时,该脚本将从主计算机获取文件。现在我必须进入每台机器并执行以下命令:

sudo scp -r max@10.0.0.216:/home/scripts /home

但我希望它在 Python 脚本中运行。这是我想出的:

import subprocess

subprocess.check_call(["sudo", "-S", "scp", "-r", "max@10.0.0.216:/home/scripts", "/home"])

错误如下:

    sudo: sudono tty present and no askpass program specified:
no tty present and no askpass program specified
Traceback (most recent call last):
File "/home/scripts/Update-Scripts/script.py", line 3, in <module>
subprocess.check_call(["sudo", "scp", "-r", "max@10.0.0.216:/home/scripts", "/home"])
File "/usr/lib/python2.7/subprocess.py" line 190, in check_call
raise CalledProcessError(retcode,cmd)
subprocess.CalledProcessError: Command '['sudo', 'scp', '-r', 'max@10.0.0.216:/home/scripts', '/home']' returned non-zero exit status

标签: pythonlinuxscp

解决方案


推荐阅读