shell利用expect工具scp上传到服务器,并复制cp到其他目录

spawn激活一个scp的unix程序
spawn ssh 和spawn scp后都接一个expect,交互密码,这里不用再手动输入密码。没有expect输入密码过程,上传和复制都不会完成。

  spawn ssh ${username}@${host}
  expect {
     "yes/no" { send "yes\r"; exp_continue }
     "password:" { send "${password}\r" }
   }
  expect "]#"
  send "\[ ! -d /home/qappsom/jBossTempl \] && mkdir /home/qappsom/jBossTempl \r"
  expect "]#"
  send "\[ ! -d /home/qappsom/jBossTempl/${date} \] && mkdir /home/qappsom/jBossTempl/${date} \r"
  expect "]#"
  send "\[ ! -d /home/qappsom/jBossTempl/${date}/8080 \] && mkdir /home/qappsom/jBossTempl/${date}/8080 \r"
  expect "eof"

  spawn scp ${src_path}/${fileName} ${username}@${host}:/home/qappsom/jBossTempl/${date}/8080/${fileName}
  expect {
    "yes/no" { send "yes\r"; exp_continue }
    "password:" { send "${password}\r" }
  }
  expect "100%"
  expect "eof"

  spawn ssh ${username}@${host}
  expect {
    "yes/no" { send "yes\r"; exp_continue }
    "password:" { send "${password}\r" }
  }
  expect "100%"
  send "cp /home/qappsom/jBossTempl/${date}/8080/${fileName} ${path8080}/${fileName} \r"
  expect "eof"
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值