教程集 www.jiaochengji.com
教程集 >  脚本编程  >  shell  >  正文 shell脚本实现ftp自动化操作的实例分享

shell脚本实现ftp自动化操作的实例分享

发布时间:2014-10-25   编辑:jiaochengji.com
如何用shell脚本实现ftp操作的自动化呢?本文为大家分享几个实例脚本,有兴趣研究shell ftp自动化的朋友,不妨作个参考。

一段SHELL程序,名为autoftp,用vi做好后,改变权限为777,就可以运行之实现FTP的自动化了。

如下:
 

复制代码 代码示例:
#!/bin/bash
#Filename: autoftp
#by www.jiaochengji.com
echo open 144.39.3.$1 >; t$1
echo user root abc >;>; t$1
echo hash >;>; t$1
echo send /tmp/test.dat /tmp/test.dat >;>; t$1
chmod 777 t$1
cat t$1 | ftp -n
echo 'OK!传送结束'
 

代码说明:
假设接收文件的一组主机地址为144.39.3.XXX,  其超级用户口令为“abc”,要传送的文件名为/tmp/test.dat。例如要向144.39.3.9主机传送,则“autoftp 9 ”就可以了。

参考示例1:
 

复制代码 代码示例:
( echo "user root abc"
  echo "bin\n"
  echo "cd /tmp\n"
  echo "lcd /tmp\n"
  echo "hash  on"
  echo "put test.dat \n"
  echo" bye\n"
 )| ftp -n 144.39.3.$1
echo 'OK!传送结束'

参考示例2:
 

复制代码 代码示例:
ftp -n 144.39.3.$1 <<!
user root abc
cd /tmp
bin
put test.dat
close
bye
!

参考示例3:
 

复制代码 代码示例:
#! /bin/ksh
if [ $# = 0 ]
then
echo "autoftp [host|ip] [usr] [passwd] [command] [sourfile] [destfile]"
else
echo open $1 >; t$1
echo user $2 $3 >;>; t$1
echo hash >;>; t$1
echo bin >;>; t$1
if [ $# = 5 ]
then
echo $4 $5 $5 >;>; t$1
echo chmod 750 $5 >;>; t$1
else
echo $4 $5 $6 >;>; t$1
echo chmod 750 $6 >;>; t$1
fi
chmod 777 t$1
cat t$1 | ftp -n
echo 'OK!\264\253\313\315\275\341\312\370'
rm t$1
fi

参考示例4:
 

复制代码 代码示例:
if [ $# != 1 ];then
   echo "错误,请输入升级包名!!!"
   exit 0
fi
echo "正在向各网点发送升级程序。。。"
cd /ly
for i in `cat w_d`
do
echo "向$i ......发送 \c"
ftp -vin   <<!
open $i
user root root
lcd /home/ebip/tmp
cd /home/cebcard/tmp
put $1
bye
!
echo "OK!!!发送成功"
done

您可能感兴趣的文章:
在shell脚本中使用ftp的方法分享
使用ftp命令传输文件的shell脚本
shell脚本实现ftp自动化操作的实例分享
linux下用脚本实现自动ftp的方法
ftp自动传输的shell脚本
linux下mysql自动备份与ftp上传的shell脚本
ftp自动下载文件脚本 ftp命令下载文件
一例mysql数据库备份的shell脚本
ftp自动上传下载的shell脚本
Solaris shell下操作数据库的方法

关键词: ftp  ftp上传   
[关闭]
~ ~