一、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
cat ftp.txt | ftp -n
2、将脚本赋有运行权后,执行脚本
chmod +x autoftp.sh
sh autoftp.sh (或./autoftp.sh)
| jxp2002 回复于:2004-01-09 12:01:01 |
| 如何在指定的时间完成传送呢,如我想在18:00时候传送! |
| lixunhong 回复于:2004-01-10 16:13:47 |
| 参见man crontab |
| njlwm 回复于:2004-07-27 11:36:30 |
| 太好了,非常有用!!! |
| seaboy168 回复于:2004-08-11 08:56:28 |
| :D [color=red:1c083c0150][/color:1c083c0150][size=18:1c083c0150][/size:1c083c0150]
老大,你真好啊!!!! |
| gdzhen 回复于:2004-12-07 11:39:27 |
| 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 cat ftp.txt | ftp -n 最后一行为什么还加入?ftp.txt文件哪来? |
| 只爱陌生人2004 回复于:2004-12-26 13:23:49 |
| 请问老大
如果我向好几个网点传送文件 怎样才能编在一个程序里 谢谢!!! |
| wenyue 回复于:2004-12-27 00:15:58 |
| [quote:b4a98a448c="只爱陌生人2004"]请问老大
如果我向好几个网点传送文件 怎样才能编在一个程序里 谢谢!!![/quote:b4a98a448c] 有个最简单的方法,再建一个shell,包含几个ftp脚本,对应不同网点的ip和口令,应该可以吧? |
| sinopost 回复于:2004-12-27 16:47:09 |
| 对啊!
cat ftp.txt | ftp -n 最后一行为什么还加入?ftp.txt文件哪来? |
| lv_xiaowei 回复于:2005-04-15 16:17:11 |
| 用户的密码为空如何进行自动传送? |
| sdccf 回复于:2005-04-15 16:39:15 |
| 用户密码不能为空. |
| lw371 回复于:2005-04-15 17:01:39 |
| 用户密码为空的时候如果手工ftp可以,
那么可以vi编辑在PASSWORD位置输入Ctrl+V Ctrl+M即输入“回车符”(显示^M)即可 |
| btq0 回复于:2005-04-16 11:21:21 |
| 如果直接执行,用vi编辑一文件比如myftp内容如下:
ftp -n 192.168.1.100 <<! user 用户名 口令 bin cd 目录名 get 文件名 put 文件名 bye ! 然后直接执行 sh myftp 即可 |
| xy-coordinate 回复于:2005-08-17 16:56:56 |
| [quote:c3287fa3c6="lw371"]用户密码为空的时候如果手工ftp可以,
那么可以vi编辑在PASSWORD位置输入Ctrl+V Ctrl+M即输入“回车符”(显示^M)即可[/quote:c3287fa3c6] 不行!!!! |
| sdccf 回复于:2005-08-17 18:49:08 |
| 既然是自动进行FTP的传输,给用户加上密码就是了. |
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/









