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)
                    

 

posted @ 2018-05-08 11:52  脚本小娃子  阅读(996)  评论(0编辑  收藏  举报