首页>>工具方法>>Linux FTP批处理shell脚本
Linux FTP批处理shell脚本
来源: http://sunboyyyl.blog.163.com 时间: 2015-01-06 12:40:43

Batch FTP具体操作:

1、建立一个ftp.dat文件

内容如下:

open ip_of_ftp_server

username

password

binary(ascii)*

cd path/to

get file

get file

bye

2、建立一个run.bat,内容如下:

ftp -s:ftp.dat

3、运行run.bat

对于binary(ascii)*的选择:如果是二进制文件,最好在get之前使用binary命令,如果是文本文件,最好用ascii命令

也可以如下,不用创建文件

@echo off

open 218.4.218.250 > DownFromFtp.tmp

3322 >> DownFromFtp.tmp

3322 >> DownFromFtp.tmp

get 1.rar c:\1.rar >> DownFromFtp.tmp

bye >> DownFromFtp.tmp

ftp -s:DownFromFtp.tmp

del DownFromFtp.tmp

ftp的参数与ftp批处理的制作

1 ftp命令

     ftp命令是Internet用户使用最频繁的命令之一,通过ftp命令可以与ftp服务

器之间相互传送文件。

语法:

ftp [-v][-d][-i][-n][-g][-s:FileName][-a][-w:WindowSize][-A][Host]

参数

-v

   禁止显示 FTP 服务器响应。

/d

   启用调试、显示在 FTP 客户端和 FTP 服务器之间传递的所有命令。

-i

   传送多个文件时禁用交互提示。

-n

   在建立初始连接后禁止自动登录功能。

-g

   禁用文件名组合。Glob 允许使用星号 (*) 和问号 (?) 作为本地文件和路径名

的通配符字符。

-s:filename

   指定包含 ftp 命令的文本文件。这些命令在启动 ftp 后自动运行。该参数不

允许带有空格。使用该参数而不是重定向 (<)。

-a

   指定绑定 FTP 数据连接时可以使用任何本地接口。

-w:windowsize

   指定传输缓冲的大小。默认窗口大小为 4096 字节。

-A

   匿名登录到 FTP 服务器。

Host

   指定要连接的计算机名、IP 地址或 FTP 服务器的 IPv6 地址。如果指定了主

机名或地址,则其必须是命令行的最后一个参数。

/?

   在命令提示符下显示帮助。

2 ftp批处理文件的制作

     新建两个文件ftpget.bat和ftpget.txt,前者就是我们要制作的批处理文件,

其内容为:

     ftppath\ftp.exe -i -s:ftpget.txt host

其中ftppath为ftp所在目录,host为ftp服务器IP地址。

ftpget.txt文件内容为:

username

password

cd filepath

get filename1

get filename2

...

get filenamen

quit

其中,filepath是要下载文件所在的目录,filename1-->filenamen 是要下载的文件名。

下面给出两个范例,供大家参考(来自:www.chinaunix.net, 十分感谢作者:deathcult)

代码:

#--1--

#!/bin/sh

F="xxxx.ftp"

echo "open 192.168.7.51 21"     > $F

echo "user username passwd"     >> $F

echo "bin"                      >> $F

echo "cd /home/xxx/"            >> $F

echo "mput $1"                  >> $F

echo "bye"                      >> $F

ftp -i -in < $F

rm -rf $F

#--2--

#!/bin/sh

FILE=$1

ftp -i -in <<!

open 192.168.7.9 21

user username password

cd /

mput $FILE

bye

!

#--3--定时ftp脚本:

转自:linuxfans.org

引用:

1.编辑.netrc,增加如下一行:

machine 服务器地址 login 用户名 password 密码

2.编辑一个文件.ftp_cmd,存储ftp命令用:

代码:

lcd 本地目录

cd 远端目录

mput *.tbz

bye3.crontab -e,增加一行:

10 4 * * 0 ftp -i < .ftp_cmd

本页地址:http://www.easytd.com/gongjufangfa/d_15010612388.html

上一篇:PLSQL Developer通过myentunnel访问内网Oracle数据库 下一篇:Linux crontab命令的用法及实例