当前位置:操作系统 > Unix/Linux >>

用FTP自动传送文件

一、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下的可能有些稍为不同。本文来自:http://www.xiaoyaxiao.com/1466.html
发表您的高见!
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,