今天要将自己的备份,从一个ftp导到另一个ftp里去。还好可以登录其中一台服务器。
本来想使用lftp的mirror功能,无耐只能登录“local”,不能登录remote,而lftp的mput貌似依然不支持put目录。(谁知道有什么参数可以用来put目录?)
还好有wput可以使用。
然而在wput( wput /home/myname ftp://ftpusername:password@ip/myname )的时候,发现文件名、目录名中包含的空格和汉字,总是报错。
于是有了下面的方法:
$find /home/myname -type f >> ~/list.txt
$while read i ; do wput “$i” ftp://ftpusername:password@ip/myname ; done < ~/list.txt
这样就支持了空格,不再报错。shell内部的处理,还真是复杂。