인수로 파일 목록을 시도 할 때까지 필자는 paramiko의 exec_command를 성공적으로 사용했습니다. 내 기능은 다음과 같습니다paramiko ls 여러 파일 출력이 잘림
def jz_orion_ssh_sout_list(cmd):
with paramiko.SSHClient() as ssh:
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect(orion['host'], username=orion['username'], password=orion['password'])
ssh_stdin, ssh_stdout, ssh_stderr = ssh.exec_command(cmd)
sout = ssh_stdout.readlines()
serr = ssh_stderr.readlines()
return sout
때 cmd='ls -l /my/path/file.txt'
가 잘 작동하지만 cmd='ls -l /my/path/file1.txt file2.txt file3.txt'
, 그것은 오직은 File2.txt 반환 할 때. 대상 서버에서 직접 실행되는 후자의 cmd는 3 개의 파일을 모두 반환합니다.
paramiko에서 작동하게 만드는 방법은 무엇입니까?
추신. 내가 paramiko에서 작동하는 또 다른 구문을 발견했습니다 : cmd='ls -l /my/path/{file1.txt,file2.txt,file3.txt}'
하지만 여전히 내가 이전에 하나의 실패 원인을 알고 싶습니다.
'ls -l/my/path/file [1-3] .txt'를 사용하지 않는 이유는 무엇입니까? – haifzhan