# Net::FTP $B$G(B upload $B$N(B resume $B$,$G$-$J$$(B

**URL:** <https://www.ruby-forum.com/t/net-ftp-b-g-b-upload-b-n-b-resume-b-g-j-b/179124>\
**Category:** Development\
**Created:** [November 18, 2009, 4:32am UTC](https://www.ruby-forum.com/t/net-ftp-b-g-b-upload-b-n-b-resume-b-g-j-b/179124 "2009-11-18T04:32:34Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![Tomoyuki\_C](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/c0e974/32.png) [@Tomoyuki\_C](https://www.ruby-forum.com/u/Tomoyuki_C)\
**Post date:** [November 18, 2009, 4:32am UTC](https://www.ruby-forum.com/t/net-ftp-b-g-b-upload-b-n-b-resume-b-g-j-b/179124/1 "2009-11-18T04:32:34Z")

</div>

è¿‘æ°¸ã¨ç”³ã—ã¾ã™ã€‚

Net::FTP#resume= ã‚’ä½¿ç”¨ã—ã¦ãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚¢ãƒƒãƒ—ãƒ­ãƒ¼ãƒ‰ã®  
å†é–‹ã‚’å¯èƒ½ã«ã—ã‚ˆã†ã¨ã—ã¦ã¿ãŸã¨ã“ã‚ã€è»¢é€çµæžœã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒ  
è¿½åŠ ã§è»¢é€ã—ãŸéƒ¨åˆ†ã ã‘ã«ãªã£ã¦ã—ã¾ã†ç¾è±¡ã«é­é‡ã—ã¾ã—ãŸã€‚  
ä½¿ç”¨ã—ã¦ã„ãŸ ftp ã‚µãƒ¼ãƒã¯ vsftp (@RedHat Enterprise Linux)  
ã¨ã„ã†ã‚‚ã®ã§ã™ã€‚

ã‚µãƒ³ãƒ—ãƒ«ã‚¹ã‚¯ãƒªãƒ—ãƒˆã¯ã“ã‚“ãªã‹ã‚“ã˜ã§ã™ã€‚

=== ftp\_upload.rb ===  
require “net/ftp”

ftp = Net::FTP.new(, , )  
ftp.resume = true

# ftp.putbinaryfile(“samplefile”)

è»¢é€é€”ä¸­ã§åœæ­¢ã•ã›ã¦ã‹ã‚‰å†å®Ÿè¡Œã™ã‚‹ã¨ã€ãƒªãƒ¢ãƒ¼ãƒˆã«ã¯å…ƒã®ãƒ•ã‚¡ã‚¤ãƒ«ã®  
å¾ŒåŠ(ç¶šè¡Œã—ãŸéƒ¨åˆ†)ã ã‘ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒã§ãã‚ãŒã‚Šã¾ã™ã€‚

ã‚¢ãƒƒãƒ—ãƒ­ãƒ¼ãƒ‰ã® resume ã¯ REST+STOR ã§å®Ÿç¾ã•ã‚Œã¦ã„ã¾ã™ãŒã€  
APPE ã‚’ä½¿ç”¨ã™ã‚Œã°æœŸå¾…ã—ãŸã‚ˆã†ã«å†é–‹ã§ãã¾ã—ãŸã€‚  
ãƒ‘ãƒƒãƒã‚’æ·»ä»˜ã—ã¾ã™ã€‚  
ã”æ¤œè¨Žã‚ˆã‚ã—ããŠé¡˜ã„ã—ã¾ã™ã€‚

---

<div class="post-metadata">

**Author:** ![Tomoyuki\_C](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/c0e974/32.png) [@Tomoyuki\_C](https://www.ruby-forum.com/u/Tomoyuki_C)\
**Post date:** [November 18, 2009, 4:37am UTC](https://www.ruby-forum.com/t/net-ftp-b-g-b-upload-b-n-b-resume-b-g-j-b/179124/2 "2009-11-18T04:37:50Z")

</div>

e$B6a1J$H?=$7$^$9!#e(B

e$B\<:Ni$7$^$7$?!"=q$-$+$1$GAw?.$7$F$7$^$$$^$7$?!#e(B

[ruby-dev:39714] e$B$KE:IU$7$?%Q%C%A$Oe(B ruby-1.8.7-p174 e$B$Ne(B  
e$B%=!\<%9$KBP$9$k$b$N$G$9!#e(B  
e$B$7$+$7e(B 1.9 e$B7O$Ne(B net/ftp.rb e$B$be(B REST+STOR  
e$B$r;H$C$F$$$k$N$Ge(B  
e$BF1$88=\>]$,5/$-$k$H;W$$$^$9!#e(B

e$B0J\>e!#e(B

Tomoyuki C. e$B$5$s$O=q$-$^$7$?e(B:

---

<div class="post-metadata">

**Author:** ![Tomoyuki\_C](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/c0e974/32.png) [@Tomoyuki\_C](https://www.ruby-forum.com/u/Tomoyuki_C)\
**Post date:** [November 19, 2009, 3:40pm UTC](https://www.ruby-forum.com/t/net-ftp-b-g-b-upload-b-n-b-resume-b-g-j-b/179124/3 "2009-11-19T15:40:11Z")

</div>

e$BA0ED$G$9!#e(B

2009e$BG/e(B11e$B7ne(B18e$BF|e(B12:31 Tomoyuki C.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

> Net::FTP#resume= e$B$r;HMQ$7$F%U%!%$%k$N%"%C%W%m!\<%I$Ne(B  
> e$B:F3+$r2DG=$K$7$h$&$H$7$F$\_$?$H$3$m!“E\>Aw7k2L$N%U%!%$%k$,e(B  
> e$BDI2C$GE\>Aw$7$?ItJ,$@$1$K$J$C$F$7$^$&8=\>]$KAx6x$7$^$7$?!#e(B  
> e$B;HMQ$7$F$$$?e(B ftp e$B%5!\<%P$Oe(B vsftp (@RedHat Enterprise Linux)  
> e$B$H$$$&$b$N$G$9!#e(B  
> (snip)  
> e$B%”%C%W%m!\<%I$Ne(B resume e$B$Oe(B REST+STOR e$B$G\<B8=$5$l$F$$$^$9$,!"e(B  
> APPE e$B$r;HMQ$9$l$P4|BT$7$?$h$&$K:F3+$G$-$^$7$?!#e(B  
> e$B%Q%C%A$rE:IU$7$^$9!#e(B

e$B$"$j$,$H$&$4$6$$$^$9!#@h$[$Ie(Bcommite$B$7$^$7$?!#e(B

---

<div class="post-metadata">

**Author:** ![Tomoyuki\_C](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/c0e974/32.png) [@Tomoyuki\_C](https://www.ruby-forum.com/u/Tomoyuki_C)\
**Post date:** [November 19, 2009, 10:13pm UTC](https://www.ruby-forum.com/t/net-ftp-b-g-b-upload-b-n-b-resume-b-g-j-b/179124/4 "2009-11-19T22:13:34Z")

</div>

e$B@.@%$G$9!#e(B

Shugo M. wrote:

> e$B$"$j$,$H$&$4$6$$$^$9!#@h$[$Ie(Bcommite$B$7$^$7$?!#e(B

e$B$=$b$=$b$+$i9T$/$H!"e(BRFC e$B$G$Oe(B REST e$B$N8e$Ke(B APPE  
e$B$O;H$($J$$$h$&$K8+$($^$9!#e(B

e$B$^$?!"$3$N%Q%C%A$Oe(B REST e$B$O4X78$J$/!“e(BAPPE  
e$B$G%/%i%$%”%s%HB&$NB3$-$re(B  
e$B%5!\<%PB&$NKvHx$KDI2C$9$l$P$$$$$@$m$&;WA[$@$H;W$o$l$k$N$G$9$,!"e(B  
RFC e$BE\*$JN)\>l$+$i8@$($P!"e(BFTP  
e$B%5!\<%P$,%U%!%$%k%7%9%F%`$K3JG\<$9$k:]$Ke(B  
e$BJQ49Ey$r9T$C$F$$$k$H!“I,$:$7$b$&$^$/$$$+$J$$%1!\<%9$,$”$k$O$:$G$9!#e(B

e$BC\<E\*$K8@$($P$3$N8=\>]$K4X$7$F$Oe(B vsftpd  
e$BB&$,0-$$$h$&$J5$$,$7$F$$$^$9!#e(B

---

<div class="post-metadata">

**Author:** ![Tomoyuki\_C](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/c0e974/32.png) [@Tomoyuki\_C](https://www.ruby-forum.com/u/Tomoyuki_C)\
**Post date:** [November 20, 2009, 1:51am UTC](https://www.ruby-forum.com/t/net-ftp-b-g-b-upload-b-n-b-resume-b-g-j-b/179124/5 "2009-11-20T01:51:18Z")

</div>

e$B6a1J$H?=$7$^$9!#e(B

e$B8!\>Z$"$j$,$H$&$4$6$$$^$9!#e(B  
e$BJdB-$5$;$FD:$-$^$9!#e(B

> e$B$=$b$=$b$+$i9T$/$H!“e(BRFC e$B$G$Oe(B REST e$B$N8e$Ke(B APPE e$B$O;H$($J$$$h$&$K8+$($^$9!#e(B  
> e$B@hF|$N%Q%C%A$G$O%”%C%W%m!\<%I$N:F3+;~$K$Oe(B REST  
> e$B$rAw?.$7$J$$$h$&$Ke(B  
> e$B$7$^$7$?e(B(transfercmd e$B$NBhFs0z?t$r;XDj$7$J$$$He(B REST  
> e$B$,Aw?.$5$l$J$$e(B  
> e$B$h$&$K$J$C$F$$$^$7$?e(B)e$B!#e(B

> e$B$^$?!"$3$N%Q%C%A$Oe(B REST e$B$O4X78$J$/!“e(BAPPE e$B$G%/%i%$%”%s%HB&$NB3$-$re(B  
> e$B%5!\<%PB&$NKvHx$KDI2C$9$l$P$$$$$@$m$&;WA[$@$H;W$o$l$k$N$G$9$,!"e(B  
> RFC e$BE\*$JN)\>l$+$i8@$($P!"e(BFTP e$B%5!\<%P$,%U%!%$%k%7%9%F%`$K3JG\<$9$k:]$Ke(B  
> e$BJQ49Ey$r9T$C$F$$$k$H!“I,$:$7$b$&$^$/$$$+$J$$%1!\<%9$,$”$k$O$:$G$9!#e(B  
> e$B$?$H$($Pe(B ascii  
> e$BE\>Aw$G2~9T$,JQ49$5$l$F$$$k\>l9g$J$I$G$7$g$&$+!)e(B  
> e$B0l1~!"85!9e(B REST e$B$G:F3+$r;n$\_$k$N$Oe(B binary  
> e$B$N;~$@$1$K$J$C$F$$$^$7$?!#e(B

REST e$B$G$N:F3+$Oe(B RFC959  
e$B$G$O%V%m%C%/%b!\<%Ie(B/e$B05=L%b!\<%I$G$N$_MxMQ$G$-$ke(B  
e$B$h$&$G$9!#%9%H%j!\<%`%b!\<%I$N\>l9g$K%U%!%$%k%\*%U%;%C%H$G:F3+0LCV$r;XDje(B  
e$B$9$k$N$Oe(B RFC3659 e$B$GDj5A$5$l$?3HD%$@$H;W$$$^$9!#e(B  
e$B\<P$aFI$_$G$9$,!“e(BSIZE  
e$B$G\<hF@$7$?0LCV$+$i:F3+e(B(e$BDI2Ce(B)e$B$9$k$3$H$K$J$C$Fe(B  
e$B$$$^$9$N$G!”\>e5-$N;XE&$Oe(B REST+STOR e$B$rMxMQ$9$k$+e(B APPE  
e$B$rMxMQ$9$k$+$Ke(B  
e$B4X$o$i$J$$LdBj$G$O$J$$$G$7$g$&$+!#e(B  
e$BA02s$NE\>Aw$,e(B ascii  
e$BE\>Aw$5$l$F$$$?$j!"$=$b$=$b%5!\<%P$KB8:\_$9$k%U%!%$%ke(B  
e$B$,E\>Aw$7$h$&$H$7$F$$$k%U%!%$%k$NE\>AwESCf$N$b$N$G$O$J$$!"$H$$$&$H$-$K$Oe(B  
e$BDI2C$7$F$O$$$1$^$;$s$,!"$=$l$Oe(B Net::FTP  
e$B$rMxMQ$9$kB&$GH=CG$9$k$7$+$J$$e(B  
e$B$+$H;W$$$^$9!#e(B

> e$BC\<E\*$K8@$($P$3$N8=\>]$K4X$7$F$Oe(B vsftpd e$BB&$,0-$$$h$&$J5$$,$7$F$$$^$9!#e(B  
> vsftpd e$B$KLdBj$,$"$k$N$O3N$+$K$=$&$@$H;W$$$^$9!#e(B  
> FEAT e$B%3%^%s%I$N1~Ez$NCf$Ke(B “REST STREAM” e$B$r4^$s$G$$$k$N$G!"e(B  
> e$B%9%H%j!\<%`%b!\<%I$Ne(B REST+STOR e$B$,F0:n$9$k$3$H$,4|BT$5$l$k$N$Ke(B  
> e$B$A$c$s$HF0:n$7$F$/$l$F$$$^$;$s$+$i!#e(B

e$B\<XB-$G$9$,;29M$K@hF|D4::$7$?e(B FTP  
e$B%/%i%$%"%s%H$NF0:n$r$^$H$a$F$_$-$^$9!#e(B  
FileZilla  
FEAT e$B$N7k2L$r?.Mj$7$Fe(BREST+STOR e$B$9$k$+e(B APPE  
e$B$9$k$+$rJ,4t!#e(B  
e$B=\>$C$Fe(B vsftp  
e$B$KBP$7$F$OB?J,%"%C%W%m!\<%I:F3+;~$K$O8mF0:n$9$k$He(B  
e$B;W$$$^$9e(B(e$BF0:n$OL$3NG’e(B)e$B!#e(B  
ncftp  
e$BA4LLE_$Ke(B REST+STOR e$B$+$ie(B APPE e$B$KJQ99e(B(ChangeLog  
e$B$h$je(B)  
FFFtp  
e$B%=!\<%9$OL$3NG’$G$9$,!"!VI=\<(!We(B-\>e$B!V=hM}FbMF$r%S%e!\<%o$GI=\<(!W$+$ie(B  
e$B%3%^%s%I$r$\_$k$He(B APPE e$B$rMxMQ$7$F$$$k$h$&$G$7$?!#e(B

e$B0J\>e!"$h$m$7$/$\*4j$$$7$^$9!#e(B

NARUSE, Yui e$B$5$s$O=q$-$^$7$?e(B:

---

<div class="post-metadata">

**Author:** ![Tomoyuki\_C](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/c0e974/32.png) [@Tomoyuki\_C](https://www.ruby-forum.com/u/Tomoyuki_C)\
**Post date:** [November 20, 2009, 2:09am UTC](https://www.ruby-forum.com/t/net-ftp-b-g-b-upload-b-n-b-resume-b-g-j-b/179124/6 "2009-11-20T02:09:26Z")

</div>

e$BA0ED$G$9!#e(B

2009e$BG/e(B11e$B7ne(B20e$BF|e(B6:02 NARUSE, Yui [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

> RFC e$BE\*$JN)\>l$+$i8@$($P!"e(BFTP e$B%5!\<%P$,%U%!%$%k%7%9%F%`$K3JG\<$9$k:]$Ke(B  
> e$BJQ49Ey$r9T$C$F$$$k$H!“I,$:$7$b$&$^$/$$$+$J$$%1!\<%9$,$”$k$O$:$G$9!#e(B

e$B\>e5-$K$D$$$F$O!"6a1J$5$s$,JV?.$5$l$F$$$k$h$&$JM}M3$GLdBj$J$$e(B  
e$B$HH=CG$7$^$7$?!#e(B

> e$BC\<E\*$K8@$($P$3$N8=\>]$K4X$7$F$Oe(B vsftpd e$BB&$,0-$$$h$&$J5$$,$7$F$$$^$9!#e(B

e$B$=$l$O$=$&$+$b$7$l$^$;$s$,!"e(BNet::FTPe$BB&$Ge(BRFCe$B$K0cH?$;$:$KBP1~$G$-$ke(B  
e$B$J$iBP1~$7$?$$$H;W$$$^$9!#e(B

---

<div class="post-metadata">

**Author:** ![Tomoyuki\_C](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/t/c0e974/32.png) [@Tomoyuki\_C](https://www.ruby-forum.com/u/Tomoyuki_C)\
**Post date:** [November 20, 2009, 2:38am UTC](https://www.ruby-forum.com/t/net-ftp-b-g-b-upload-b-n-b-resume-b-g-j-b/179124/7 "2009-11-20T02:38:07Z")

</div>

e$B@.@%$G$9!#e(B

2009/11/20 9:44, Tomoyuki C. wrote:

> e$BJdB-$5$;$FD:$-$^$9!#e(B  
> (e$BN,e(B)

e$B$J$k$[$I!“3N$+$K6D$k$H$\*$je(B APPE  
e$B$rMQ$$$k$h$&$KJQ$($?J}$,$h$$$N$G$7$g$&!#e(B  
e$BJdB-$”$j$,$H$&$4$6$$$^$7$?!#e(B
