scp自动填充密码shell脚本
安装expect
sudo apt-get install ecpect
编写脚本mq_scp.sh
#!/usr/bin/expect
#*************************************************************************
# ./mq_scp.sh 目标上传文件
#*************************************************************************
set timeout 30
set user root
set pass 12398qq.
set dir /root/mq_blog/source/_posts
set ip 39.96.68.13
set filen [lrange $argv 0 0]
# [lrange $argv 0 0] 0 0表示第一个参数
spawn scp ${filen} ${user}@${ip}:${dir}
expect "${user}@${ip}'s password:"
send "${pass}\r"
interact
软连接到环境变量目录
sudo ln -s /home/maqi/blog/test/mq_scp.sh /usr/local/bin/mq_scp
之后任意终端输入mq_scp 目标上传文件
即可。
except介绍
-
#!/usr/bin/expect
告诉操作系统脚本里的代码使用那一个shell来执行。这里的expect其实和lin