我们希望大家可以通过本文介绍的这段代码示例,能够充分的掌握Ruby复制文件这一技巧,并从另一角度深入了解Ruby语言。
我们在学习Ruby语言的时候,可以知道,它是一款完全面向对象的解释型脚本语言。许多编程人员都将目光投向了它。在这里我们将会了解到Ruby复制文件的一些技巧。#t#
使用net::ssh 库, 可以得到其他机器之间的安全的shell连接, 在其他机器上启动一个cat进程, 并将向要复制的文件写入标准的输入中。
Ruby复制文件代码示例:
- require'rubygems'
- require'net/ssh'
- defcopy_file(session,source_path,
destination_path=nil) - destination_path||=source_path
- cmd=%{cat>"#{destination_path.
gsub('"','\"')}"} - session.process.popen3(cmd)do|i,o,e|
- puts"
- copying#{source_path}to#
{destination_path}…" - open(source_path){|f|i.write(f.read)}
- puts'done.'
- end
- end
- net::ssh.start('example.com',
:username=>'leonardr', - :password=>'mypass')do|session|
- copy_file(session,'/home/leonardr/
scripts/test.rb') - copy_file(session,'/home/leonardr/
scripts/"test".rb') - end
- #copying/home/leonardr/scripts/test.
rbto/home/leonardr/scripts/test.rb… - #done.
- #copying/home/leonardr/scripts/"test".
rbto/home/leonardr/scripts/"test".rb… - #done.
以上就是Ruby复制文件的全部方法介绍。
转载请说明出处
知优网 » Ruby复制文件相关方法介绍(ruby 写文件)
知优网 » Ruby复制文件相关方法介绍(ruby 写文件)