时间:2021-05-22
shell脚本无密码登录 expect的使用方法详解
今天需要做一个定时任务脚本将最新的数据包文件传到远程的服务器上,虽然有密钥但也是要求输入密码的那种,所以只能另想办法实现让脚本自动输入密码了。
从网上查到使用expect可以,简单研究了一下,效果不错。
因为我的操作系统没有安装expect,所以直接"yum -y install expect",你可以根据你的操作系统安装expect,或者源码编译。
安装好之后就可以使用了,这里有几种方法:
一、单独写一个脚本
如 auto_scp.sh:
我这里的变量都是随意设置的,你可以根据你的情况进行选择,保存退出之后,对该文件加上可执行权限,运行
"./auto_scp.sh 2.2.2.2"就可以了,"2.2.2.2"就是传入的第一参数。
"passphrase"和"password"等就是要监测的输入提示的一部分,send "$server_pswd\n"就是要执行的命令。
二、在脚本中使用----我比较喜欢这个
我这里使用的是Here document方法。
变量都是我从配置文件中获取的,这里不再赘述了。
三、在脚本中使用
也是在脚本使用,但是不是用的Here document方法,而是使用expect -c 参数书,"-c"选项后面的字符串填充的就是命令。但是要注意本身字符串的转义符。
如有疑问请留言或者到本站社区交流讨论,感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
详解Linux使用shell+expect远程登录主机最近使用Ubuntu系统想远程登录自己的vps主机,但是感觉自带的远程登录软件不太好使。于是乎想着怎么使用
linux随机密码生成工具mkpasswd详解及实例mkpasswd命令生成随机复杂密码,前提安装expect,然后执行mkpasswd命令即可生成随机的密码。
shell脚本自动创建用户详解需求:判断用户zhangsan是否存在,不存在就创建并设置密码为1234561、vicreateuser.sh2、写入:USER_
Linux在Shell脚本中使用函数实例详解Shell的函数Shell程序也支持函数。函数能完成一特定的功能,可以重复调用这个函数。函数格式如下:函数名(){函
支付通pos机的使用方法: 1、下载支付通Qpos手机客户端APP,下载安装后使用注册账号登录软件,如忘记登录密码可在登录界面点击“忘记密码”进行密码重置即可