通过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 JBPM:无法部署进程存档:null   java将一个数组拆分为两个大小相等的数组   java Spring boot验证该字段是否为string类型   JAVA JPA保存到TSV而不是SQL   java PMD报告超过X个违规   java是否支持springdatagremlin中的自定义查询?   java在“for”循环后使用变量   JPQL中默认查询中的java错误列   如何在java中实现不同于线程的进程?   java如何检查字符串是否平衡?   xml使用xalan扩展在XSL中处理java集合   java我试图使用子类/超类重写另一个类的值   转换为JSON时出现java堆栈溢出问题   java考虑定义一个类型为“COM”的bean。实例演示。在您的配置中命令$DefaultIO   java在kubernetes中如何检索转发端口的值?   JavaEclipse,动态web项目,向类路径添加另一个eclipse项目   eclipse的java Spring上下文XML验证器?   Linux下利用MATLAB(Windows)生成Java包   Java:在存储到DDC之前验证属性   java校验字符串