Comment entrer dans un répertoire distant sur Ruby NET: SFTP?
Question
Comment entrer dans un répertoire tel que la commande - cd afin d’utiliser des fichiers distants sans préfixe de chemin?
Voici mon code actuel.
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
je voudrais avoir:
sftp.cd REMOTE_PATH
sftp.rename!("latest.zip", "latest.back.zip")
sftp.upload!("latest.zip", "latest.zip")
La solution
J'ai trouvé une solution, qui consiste à utiliser plutôt la connexion SSH. . Fonctionne pas. Le chemin SFTP semble sans importance pour le chemin SSH. Faites-moi savoir si vous avez d'autres options.
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
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow