Pregunta

¿Cómo ingresar a un directorio como el comando - cd, para operar archivos remotos sin un prefijo de ruta?

Aquí está mi código actual.

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

Me gustaría tener:

sftp.cd REMOTE_PATH    
sftp.rename!("latest.zip", "latest.back.zip")
sftp.upload!("latest.zip", "latest.zip")
¿Fue útil?

Solución

Encontré una solución, que es utilizar la conexión SSH en su lugar. . No funciona. La ruta SFTP parece irrelevante para la ruta SSH. Déjame saber si tienes otras opciones.

 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
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top