自动ftp脚本的使用

    技术2022-05-20  42

    1. 使用.netrc文件

    在自己的home目录下建立一个权限600,名为.netrc的文件,内容是:machine 192.168.1.1 login test password test其中192.168.1.1为服务器的ip或主机名,test为服务器的一个帐号,后一个test为密码。这样以后你每次ftp 192.168.1.1的时候,系统都会帮你以用户名test,密码test登录。

     

    2. 在脚本中写ftp命令

    ftp -n<<!open 192.168.1.171user guest 123456  *用户名 和密码binary                      *设置传输方式cd /home/datalcd /home/databackupprompt             关闭自动交互mget *closebye!

     

    3. 使用命令文件

    FTP服务器IP地址为10.30.15.3,需进行文件传输的目录为C:\data,登录用户名为Anonymous,口令为123456。从本机到对方机接收文件操作方法如下。

      第一步,先新建一个文本:

      Open 10.31.15.3

      User anonymous

      123456

      Cd data

      Prompt

      Mget *.*

      Bye

      Quit

      Exit

      将该文本保存为1.ftp存放到C盘根目录。该文件只要扩展名为ftp,前缀可任意取名。目录也不一定要在根目录,主要以方便为主。文本中Bin为用二进制码格式传输文件,如用ASCII码格式传输文件可去掉该行。如为本机向对方机发送文件,则只要将文本中的Mget替换成Mput即可。这之后,再新建另一个文本:

    ftp –n –s:”c:/1.ftp”

     

    4. 使用expect等脚本

    说明:使用了expect,参数为ftp服务器地址和要下载的文件名参数:lindex $argv 0  读取ftp服务器ip地址     lindex $argv 1  读取要下载的文件名编辑:#vi ftp.shspawn ftp [lindex $argv 0]expect "Name (*):"send "anonymous/r"expect "Password:*"send "/r"expect "ftp>"send "binary/r"expect "ftp>"send "hash/r"expect "ftp>"send "get [lindex $argv 1]/r"expect "* Transfer complete."send "exit/r"执行方法:expect ftp.sh 服务器ip地址  文件名称        (expect ftp.sh 192.168.0.1 filename.txt )

     


    最新回复(0)