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

为了实现高度自动化的系统资源监控,且实现对监控到数据异常时日志文件的上传(ftp),实现了如下脚本(脚本名称:autofileupload):
#!/usr/local/bin/expect

set file [lindex $argv 0];
#set date [lindex $argv 1];
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 [filename] [newdirname]。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值