Ruby Net에서 원격 디렉토리를 입력하는 방법 : SFTP?
문제
명령 -CD와 같은 디렉토리를 입력하는 방법으로 경로 접두사없이 원격 파일을 작동합니까?
다음은 내 현재 코드입니다.
Net::SFTP.start do |sftp|
sftp.rename!(REMOTE_PATH + "latest.zip", REMOTE_PATH + "latest.back.zip")
sftp.upload!("latest.zip", REMOTE_PATH + "latest.zip")
end
나는 갖고 싶다 :
sftp.cd REMOTE_PATH
sftp.rename!("latest.zip", "latest.back.zip")
sftp.upload!("latest.zip", "latest.zip")
해결책
SSH Connect를 대신 사용하는 솔루션을 찾았습니다.. 작동하지 않습니다. SFTP 경로는 SSH 경로와 관련이없는 것 같습니다. 다른 옵션이 있으면 알려주세요.
Net::SSH.start("localhost", "user", "password") do |ssh|
ssh.sftp.upload!("/local/file.tgz", "/remote/file.tgz")
ssh.exec! "cd /some/path && tar xf /remote/file.tgz && rm /remote/file.tgz"
end
제휴하지 않습니다 StackOverflow