通过ssh和paramikos scp的包装器在本地计算机和远程计算机上执行命令。

cmdssh的Python项目详细描述


通过ssh在本地计算机和远程计算机上执行命令,以及 paramikos scp的包装。

shell命令

用shell=true包装subprocess.call

shell(cmd)

后台unix命令正在运行

运行阻塞unix命令并返回结果

cmd_run(cmd,pr=False,streamoutput=True,returnoutput=True,cwd=None,prefix=None)# examplecmd_run('date "+%Y-%m-%d% %H:%M"',pr=False,streamoutput=False,returnoutput=True)# more paramscall_command(command,cmdfolder=os.getcwd(),verbose=False,streamoutput=True,\
             returnoutput=False,prefix=None,ret_and_code=False)

参数:

  • command:unix命令
  • cmdfolder=os.getcwd()->;工作文件夹命令
  • verbose=false->;打印命令
  • streamoutput=true->;将输出打印到stdout(保持缓冲)
  • returnoutput=false->;返回缓冲输出
  • prefix=无->;在流输出之前放置的字符串
  • {TT7}$= false & gt;返回退出代码(代码,VAL)

variant background unix命令

常见的用例场景,运行一个命令并获得结果,可能 使用可选过滤器打印到控制台。

# example filter:defonlyerrors(data):if"ERROR"indata:returndatacmd_exec(cmd,cmdtoprint=None,display=True,myfilter=onlyerrors)
  • cmdtoprint:unix命令
  • display:打印到控制台
  • myfilter:用于打印的函数

ssh:在远程计算机上运行命令

使用ssh和密钥身份验证登录到远程ssh服务器,然后 在那里执行命令。

defremote_cmd(server,cmd,username=None,timeout=60,keypath=None):#exampleremote_cmd("localhost","rm -Rf ~/Desktop/foobar")

参数:

  • server:服务器的IP或域名
  • cmd:要执行的unix命令
  • username:用于登录的用户名
  • timeout:尝试连接到服务器
  • keypath:用户名公钥的路径

基于元组的接口:

remote_cmd_map(servercmd)
  • servercmd:元组具有(server,cmd,username,keypath)

ssh:安全复制协议

scp_get(server,fp1,fp2,username=None,keypath=None)scp_put(server,fp1,fp2,username=None,keypath=None)

参数:

  • server:服务器的IP或域名
  • fp1:源文件路径
  • fp2:目标文件路径
  • username:用于登录的用户名
  • keypath:用户名公钥的路径

ssh:shell

调用计算机上的外壳

invoke_shell(server,username,keypath)

参数:

  • server:服务器的IP或域名
  • username:用于登录的用户名
  • keypath:用户名公钥的路径

下载文件

请求库的包装。下载有进度的文件 酒吧。

download(url,mypath):

参数:

  • url:要下载的URL
  • mypath:创建下载文件的文件路径

示例输出:

download: http://download.thinkbroadband.com/5MB.zip
00:00:02|███████████████████████         |3.7Mi/5.0Mi

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java结合两个Date实例使用Joda创建datetime   带有POI和FileOutputStream的java Swing应用程序性能问题   Java中是否存在类似于Python的异常?   Java中有界通配符的泛型   使用字符和子字符串的java不同输出   在Java中获取LDAP模式   java自定义类在自身上生成ClassNotFoundException   java连接到从internet到通过LAN连接到internet的系统的serversocket   java如何通过maven在jaxws中使用jaxb插件?   java Kerberos如何获取主体或客户端名称?   java应用服务器中是否有JDBC的单点登录解决方案?   java是存储矩阵值以便以后访问的更好方法   Java等级计算器。开始这门课我需要一些帮助   未找到Android“libc++\u shared.so”中的java OpenCV实现   当我使用web配置部署描述符时使用java。xml。它显示了错误   java为什么我的ArrayList的add方法冲突,如何编辑我的自定义add方法   java创建一个以集合为键的映射?   java如何将用户输入到数字三角形中   为什么Java在读取LinkedHashMap时会自动从字符串转换为整数   类动态创建和读取java类