崬城衞 发表于 2015-11-6 07:49:36

如何实现自动ftp上传功能:expect

  为了实现高度自动化的系统资源监控,且实现对监控到数据异常时日志文件的上传(ftp),实现了如下脚本(脚本名称:autofileupload):
#!/usr/local/bin/expect
  set file ;
#set date ;
set timeout -1;
while {1} {
      spawn ftp 218.108.xxx.xxx;
      expect "Name";
      send "test/r";
      expect "Password";
      send "youpassword/r";
      expect "Login failed." {send "quit/r";close;wait} "ftp>" break;
}
send "mkdir $date/r";
expect "ftp>";
send "cd $date/r";
expect "ftp>";
send "bi/r";
expect "ftp>";
send "put $file/r"
expect "ftp>";
send "quit/r";

  解释:lindex表示list index,表示参数列表;
argv 0即表示第1个参数,agrv 1表示第二个...以此类推。
用法:./autofileupload 。
             版权声明:本文为博主原创文章,未经博主允许不得转载。
页: [1]
查看完整版本: 如何实现自动ftp上传功能:expect