2011-07-14 45 views
5

我想从一台机器使用shell脚本将多个文件ftp到另一台机器。下面是我的脚本: -如何使用shell脚本ftp多个文件

ftp -nv <<EOF 
open home.machine.com 
user remote monday 
binary 
mput *.txt 
bye 
<<EOF 

现在,问题是,它挂在中间,但是当我尝试命令提示符上的每个命令。当我执行mput *.txt它要求确认每个文件,当我输入yes然后它移动到下一个文件,并再次询问。

我错过了什么?

谢谢。

+0

属于Linux与Unix – genesis

+1

请删除“<<”字符在最后一行的开头导致它开始新的块和命令后将被shell omnited – Igor

回答

4

我想是这样的

prompt 
mput *.txt 

prompt命令关闭用户交互,然后将其workedd正常。

3

从手册:

-i关闭交互提示在多个文件传输。

+0

我试图像'mput -i * .txt',但那也没有奏效..am我使用不正确..当我试试这个..只有2- 3个文件获取FTP休息不... –

2

根据您的代码段,它应该是这样的:

ftp -inv <<EOF 
open home.machine.com 
user remote monday 
binary 
mput *.txt 
bye 
<<EOF 

通知在FTP参数列入“-i”的。

也,是不建议使用,因为MPUT这将是很难跟踪比文件传输错误单独

0
ftp -n ftp.test.com <<+ 
user ftpUser password 
cd local_dir/ 
lcd remote_dir/ 
mget *.* 
mdelete *.* 
quit 
bye 
+