python - 如何使用 python Paramiko (SSHClient) 检查远程文件是否可写?

标签 python paramiko

我正在尝试使用 paramiko 检查远程文件是否可写。 我当前的代码是

from paramiko.ssh_exception import SSHException, BadHostKeyException 
import paramiko
import sys
from optparse import OptionParser
import os

stdin, stdout, stderr = self.__econnection.exec_command('bash');
stdin.write('if [ -w "%s" ];'%(temp_path))
stdin.write("then echo True;");
stdin.write("else echo False;");
stdin.write("fi;");
stdin.flush();

但是一旦我执行这些行,外壳就会卡住,我必须关闭外壳。 请帮忙..

最佳答案

假设 ssh 是您的 paramiko SSHClient 对象,temp_path 是被测试文件的路径,并且连接已设置,请尝试以下操作:

# prepare command
command = 'if [ -w {filename} ]; then echo True; else echo False; fi;'
# add filename
command = command.format(filename=temp_path)
# execute command
stdin, stdout, stderr = ssh.exec_command(command)
# read the result from stdout and remove the trailing newline character
result = stdout.readline().rstrip()
print(result)

关于python - 如何使用 python Paramiko (SSHClient) 检查远程文件是否可写?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5102702/

相关文章:

python - Paramiko:连接到 Cisco C2960 切换器时无法重新使用 ssh session

python从第三台机器连接到mysql

python - 规范化 numpy 中的列

python - 在 numpy 数组上运行 Tensorflow classify_image

python - 请求在浏览器中工作正常,但在 python 中为 403

python - pysftp Paramiko PasswordRequiredException:私钥文件已加密

python - Paramiko 在远程 SFTP 服务器上的文件中追加/编辑特定行

python - 按钮颜色在功能中不改变 (Python tkinter)

python - 未绑定(bind)本地错误: local variable 'document' referenced before assignment

python - 使用 pysftp 连接到 SFTP 服务器时出现 "Failed to load HostKeys"警告