2
現在、ssh(paramiko)を使用してLinuxマシン上でリモートでコマンドを実行するクラスを作成しています。以下は、私がLinuxでリモートコマンドを実行中にエラーを処理する方法
def connect(self):
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(self.ip, port=self.port, username=self.user,password=self.password,timeout=self.timeout)
time.sleep(10)
return ssh
def runCommands(self,commands):
ssh=self.connect()
channel = ssh.invoke_shell()
time.sleep(10)
for command in commands:
wait=0
while channel.send_ready()!=True:
wait+=1
time.sleep(self.timeout)
if wait==5:
return 0
channel.send(command+'\n')
channel.send("exit\n")
return 1
を使用していたコードであるコマンドは、例えば、エラーに実行する場合、私は「MKDIR A」を使用する場合は、ここに私の質問は:「ファイルにエラーが存在し、」私はそれを処理することができますどのように、検出されました。私はchannel.recv(buff_size)を使ってみましたが、ここでの問題はエラーと通常のメッセージを区別できないことです。事前に
おかげ