Подтвердить что ты не робот

Как передавать файлы с помощью SSH и SCP с помощью вызовов Ruby?

У меня есть файл в каталоге usr/share/ruby.rb. Я хочу передать этот файл на удаленные устройства на базе IP, используя SSH и SCP, используя вызовы Ruby. Кто-нибудь может мне помочь?

4b9b3361

Ответ 1

Пример:

require 'net/scp'

    host = '10.10.10.10'
    login = 'foo'
    password = 'bar'

    Net::SCP.start(host, login, :password => password) do |scp|
      puts 'SCP Started!'
      scp.download('/usr/share/ruby.rb', '.')
    end

существует также scp.upload

Ответ 2

Библиотека Net:: SSH включает Net:: SCP, поэтому вы должны начать искать там.

В документах Net:: SCP:

  require 'net/scp'

  # upload a file to a remote server
  Net::SCP.upload!("remote.host.com", "username",
    "/local/path", "/remote/path",
    :password => "password")

  # download a file from a remote server
  Net::SCP.download!("remote.host.com", "username",
    "/remote/path", "/local/path",
    :password => password)

  # download a file to an in-memory buffer
  data = Net::SCP::download!("remote.host.com", "username", "/remote/path")