Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 运行重命名为fabfile.py以外的结构文件和无密码ssh_Python_Amazon Web Services_Ssh_Fabric_Paramiko - Fatal编程技术网

Python 运行重命名为fabfile.py以外的结构文件和无密码ssh

Python 运行重命名为fabfile.py以外的结构文件和无密码ssh,python,amazon-web-services,ssh,fabric,paramiko,Python,Amazon Web Services,Ssh,Fabric,Paramiko,我有一个工作代码,现在由于一些问题我无法运行 我面临以下问题: 当我使用python/path/to/file.py运行文件时,系统会提示我输入密码 即使我使用fab-l,这个文件也会被调用,并再次提示我输入密码 只是想让您知道,我在目录中有很多.py(包括fabfile.py)文件,它们使用fabric和其他库 以下是我的代码片段: from fabric.api import * env.key_filename = /path/to/my/pem/file def mem_usage(

我有一个工作代码,现在由于一些问题我无法运行

我面临以下问题:

  • 当我使用python/path/to/file.py运行文件时,系统会提示我输入密码

  • 即使我使用fab-l,这个文件也会被调用,并再次提示我输入密码

  • 只是想让您知道,我在目录中有很多.py(包括fabfile.py)文件,它们使用fabric和其他库

    以下是我的代码片段:

    from fabric.api import *
    
    env.key_filename = /path/to/my/pem/file
    
    def mem_usage():
       '''Check free mem'''
       run('free -m')
    
    execute(mem_usage, host="user@IP_or_hostname")
    
    请帮助我理解:

  • 如何在不通过命令行参数传递路径的情况下使用pem文件进行ssh

  • 如何运行代码(名为foo.py的文件)


  • 任何指点都将不胜感激。

    因此,我找到了问题的解决方案

  • 不检查我的pem文件是一件愚蠢的事情,它是用密码保护的

  • python文件可以命名为任何名称,只要它有一个execute方法——它的执行方式与普通python程序一样。假设foo.py,那么它将使用python foo.py执行


  • 此外,您还可以通过
    -f/--fabfile=
    标志向fab提供要使用的fabfile。