ftp自动运行脚本

作者:竹笋炒肉
出处:http://hedong.3322.org/archives/000095.html

可以自动从远处下载指定文件。
在个人的home目录下,建立一个.netrc文件。如下载01开头的mp3,内容如下:
machine 192.168.0.2 21 login _username password _password
macdef init
binary
prompt
!clear
cd /musics
mget 01*.mp3
!clear
bye

注意:bye后要有一空行,.netrc文件的属性须是600。
启动:ftp 192.168.0.2 21

 

 

 

 

如何用ftp自动传送文件
作者:paulliang
email:iesun@21cn.com 或 iesun@gf.com.cn
出处:http://www.linuxforum.net/docnew/showthreaded.php?Cat=&Board=server&Number=9&page=6&view=collapsed&sb=5&o=all&fpart=

一、Windows下用ftp自动传送文件的方法

1、先建立一个文本文件,文件名可以是任意名,例如ftp.txt,其内容如下:
open 192.168.1.100 /*远服务器地址或名*/
MYNAME /*用户名MYNAME*/
MYPASSWORD /*用户密码MYPASSWORD*/
binary /*以二进制传送文件,可选项*/
cd REMOTE_PATHNAME /*进入远程目标路径REMOTE_PATHNAME*/
get REMOTE_FILE LOCAL_FILE /*把远程文件REMOTE_FILE下载成本地文件LOCAL_FILE*/
put LOCAL_FILE REMOTE_FILE /*将本地文件LOCAL_FILE上传成远程文件REMOTE_FILE */
bye /*退出ftp应用*/

2、 执行以下命令:
ftp -s:ftp.txt

就完成了自动传送。

二、UNIX下用ftp自动传送文件名是静态的方法

1、 建立一个文本文件,例如文件名是ftp.txt,其内容如下:
open 192.168.1.100 /*用open连接远程服务器192.168.1.100*/
user MYNAME MYPASSWORD /*MYNAME是用户名,MYPASSWORD是密码*/
binary /*以二进制传送*/
hash /*当有数据传送时,显示#号*/
cd REMOTE_PATHNAME /*进入远程目标路径REMOTE_PATHNAME*/
get REMOTE_FILE LOCAL_FILE /*把远程文件REMOTE_FILE下载成本地文件LOCAL_FILE*/
put LOCAL_FILE REMOTE_FILE /*将本地文件LOCAL_FILE上传成远程文件REMOTE_FILE */
bye /*退出ftp应用*/

2、执行命令:
cat ftp.txt | ftp -n

 

三、UNIX下用ftp自动传送文件名是动态的方法

现以一个文件名是以月份和日期为变量的文件来说明

1、建立脚本文件autoftp.sh
#!/bin/sh

MM=`date "+%m"` /*取月份*/
DD=`date "+%d"` /*取日期*/
pre_filename="DBZZ" /*设定文件名前缀前部分*/
filename="${pre_filename}${MM}${DD}.tgz"
echo " open 192.168.1.100
user MYNAME MYPASSWORD
binary
hash
cd REMOTE_PATHNAME
get ${filename} ${filename}
bye

" | ftp -n

2、将脚本赋有运行权后,执行脚本
chmod +x autoftp.sh
sh autoftp.sh (或./autoftp.sh)
 

UNIX的两个方法在Linux和FreeBSD下通过,其他UNIX下的可能有些稍为不同。

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注