shell通过ftp实现上传/下载文件

直接代码,shell文件名为testFtptool.sh:

  

#!/bin/bash
######################################################################################
#功能:ftp上传/下载文件
#用法:第一个参数put(上传)还是get(下载)文件,第二个参数为FTP服务器IP,第三、四个参数分别是用户名和密码
#      第五个参数是FTP上的工作目录,第六个是本地的目录,第七个是操作的文件名
#例子:testFtptool.sh put|get ip_address ftp_user ftp_password ftp_dir local_dir filename
#版本:0.1    #作者:crazyMyWay     #日期:
#说明:建立初版
######################################################################################
E_NOTROOT=67

#输出帮助信息,用法:./testFtptool.sh -h
if [ $# -eq 1 -a "$1" = "-h" ]
then
  echo "Usage: $0 put|get ip_address ftp_user ftp_password ftp_dir local_dir filename"
  echo "Example:
        $0 put|get ftp服务ip ftp用户名 ftp密码 ftp目录 本地目录 文件名"
  exit $E_NOTROOT
fi

#如果参数不等于7
if [ $# != 7 ]
then
  echo "Param error: Usage: $0 put|get ip_address ftp_user ftp_password ftp_dir local_dir filename"
  exit $E_NOTROOT
fi

#进行ftp操作,ftp命令解释请查阅相关资料
ftp -v -n <<!
open $2 21
user $3 $4
prompt
epsv4 off
cd $5
bin
lcd $6
$1 $7
quit
!

 

测试结果:

 

 

posted @ 2015-03-29 12:08  crazyMyWay  阅读(9410)  评论(0编辑  收藏  举报