paramiko使用exec_command执行rm -rf删除目录的坑
Posted 沧海一粟,何以久远
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了paramiko使用exec_command执行rm -rf删除目录的坑相关的知识,希望对你有一定的参考价值。
paramiko删除目录后的上传操作请参考步骤1、2、3的说明
try: ssh = SSHClient(ip,user) sftpClient = ssh.getSftpClient() output_jarpath =‘/home/admin/dir/*‘ cmd1 = "rm -rf " +output_jarpath //1、我以为这里不会删除dir目录,只会删除dir目录下的所有文件 stdout = ssh.exec_command(cmd1) cmd2 = "mkdir /home/admin/dir" stdout1 = ssh.exec_command(cmd2) //3、因此这里要再次创建一次目录 #然后上传jar文件 rs1 = sftpClient.put(‘/home/admin/a.jar‘,output_jarpath) //2、但是这里报错,说没有目标目录 sftpClient.close() ssh.close() except Exception, e: s = traceback.format_exc() logger.error(s)
以上是关于paramiko使用exec_command执行rm -rf删除目录的坑的主要内容,如果未能解决你的问题,请参考以下文章
paramiko中exec_command和invoke_shell方法都出现EOF错误
使用Paramiko单独执行多个相关命令,并找出每个命令何时完成
如何在 paramiko 中写入标准输入(从 exec_command 返回)?
paramiko.SSHClient()的exec_command函数内部如何使用变量