首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python - Fabric -获取文件

Python - Fabric -获取文件
EN

Stack Overflow用户
提问于 2015-10-28 21:28:05
回答 1查看 1.6K关注 0票数 1

我试图用fabric编写一个简单的python代码,使用get()函数将文件从一个主机传输到另一个主机,尽管我一直收到错误消息:

代码语言:javascript
复制
MacBook-Pro-3:PythonsScripts$ fab get:'/tmp/test','/tmp/test'
[hostname] Executing task 'get'
Traceback (most recent call last):
  File "/Library/Python/2.7/site-packages/fabric/main.py", line 743, in main
   *args, **kwargs
  File "/Library/Python/2.7/site-packages/fabric/tasks.py", line 387, in execute
    multiprocessing
  File "/Library/Python/2.7/site-packages/fabric/tasks.py", line 277, in _execute
    return task.run(*args, **kwargs)
  File "/Library/Python/2.7/site-packages/fabric/tasks.py", line 174, in run
    return self.wrapped(*args, **kwargs)
  File "/Users/e0126914/Desktop/PYTHON/PythonsScripts/fabfile.py", line 128, in get
    get('/tmp/test','/tmp/test') ***This line repeats many times then last error below***
RuntimeError: maximum recursion depth exceeded

我目前的代码是:

代码语言:javascript
复制
from fabric.api import *
from getpass import getpass
from fabric.decorators import runs_once

env.hosts = ['hostname']
env.port = '22'
env.user = 'parallels'
env.password="password"


def abc(remote_path, local_path):
    abc('/tmp/test','/tmp/')

任何帮助都将不胜感激!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-28 21:37:57

fabric.api.get已经是一种方法。当您执行from fabric.api import *时,您正在导入fabricget。您应该重命名您的get函数以避免冲突。

abc函数内部,您需要调用get

代码语言:javascript
复制
def abc(p1,p2):
    get(p1, p2)

编辑:当通过fabric执行函数时,参数通过命令行(即。$ fab abc:string1,string2

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33401907

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档