Bye Bye Moore

猫マンション建築の野望を胸に零細事業主として資本主義の荒波に漕ぎ出したアラサー男の技術メモ

RubyでFTPサーバにアップロード

Rubyスクリプトで出力したデータをFTPサーバにアップロードしたい場合は、net/ftpライブラリを使用します。
拍子抜けするほど簡単です。

ftp.rb 参考元ではパスワード直打ちでしたが、ここでは引数で指定することにします。

require 'net/ftp'
require_relative 'makedata'

makedata('ファイルの相対パス')

ftp = Net::FTP.new
ftp.connect('ホスト名')
ftp.login('ログイン名', ARGV[0])
ftp.binary = true
ftp.chdir('書き込み先ディレクトリ')
ftp.put('出力ファイルの絶対パス', '送り先での名前')
ftp.quit

end

makedata.rb これはお好みで。

def makedata(filepath)
  100.times do
    File.open(filepath,"a") do |f|
      f.puts("#{rand(10).to_s}")
    end
  end
end

実行すると、

5
2
4
1
9
.
.
.

といった感じのデータがディレクトリ内に書き込まれるはずです。

参考元