转载地址:https://blog.csdn.net/bigcat133/article/details/46924371

scp和ssh方便好用而且安全,也许是为了更安全所以默认不会提供密码传参。

但如果你像我一样需要在运行脚本中自动填入scp或ssh的密码可以采用下面两种方法

第一种比较简单,直接使用sshpass命令传递密码

sshpass -p "your password" scp ./abc.txt hostname/abc.txt

第二种可以用expect
#!/usr/bin/expect

set timeout 30

spawn /bin/bash
expect -re "#|$"
send "rsync -e 'ssh ' -avzc youname@server_address:/mydata/game_log/ /data/log/\r"
expect {
<span style="white-space:pre">    </span>"password" { send "YOU_PASSWORD\r" }
<span style="white-space:pre">    </span>"yes/no" { send "yes\r"; exp_continue; }
}

expect -re "total size is"
expect -re "#|$"
send "exit\r"

其实可以看出expect是一个更灵活的设计,他其实是脱胎于tcl语言,也就是说你需要安装expect才能使用,这里注意脚本的第一行

#!/usr/bin/expect -f
这里就是告诉shell由expect来执行这个脚本,spawn命令则是与expect交互的shell命令。而在后面你可以通过expect来将交互命令中输出作为输入条件(这里的expect可不是shell里的而是expect中的expect),如果带-re表示采用正则。之后可以用send或exp_send对交互命令输入。总之你可以用这做出非常有意思的功能。

这样就OK了,祝你好运

scp ssh自动填入密码相关推荐

  1. Android实战简易教程-第三十九枪(第三方短信验证平台Mob和验证码自动填入功能结合实例)

    用户注册或者找回密码时一般会用到短信验证功能,这里我们使用第三方的短信平台进行验证实例. 我们用到第三方短信验证平台是Mob,地址为:http://mob.com/ 一.注册用户.获取SDK 大家可以 ...

  2. Android实战简易教程-第三十六枪(监听短信-实现短信验证码自动填入)

    一般用户喜欢用手机号作为用户名注册APP账号,这时一般都是通过手机验证码的方式进行验证,下面我们就研究一个非常实用的方法,通过监听短信-实现短信验证码的自动填入,提高用户体验. 首先我们看一下如何监听 ...

  3. 把数据自动填入exe的输入框_2000余字长文讲解Excel中的“数据验证”,我收藏了...

    今天的文章主要跟大家分享Excel中数据有效性(新的Excel版本叫:数据验证)的基础用法! 一.如何设置数据有效性? 步骤:选中需要设置数据有效性的单元格或者单元格区域,点击菜单栏的"数据 ...

  4. android获取短信验证码自动填入

    android获取短信验证码自动填入的简单实现,可以直接用 权限 <!--读取短信权限--> <uses-permission android:name="android. ...

  5. c语言如何自动填写验证码,小程序 自带样式的验证码自动填入

    一.业务场景:像ios手机上的获取到验证码,,会在键盘上显示,点击,会自动填入到输入框里面:这时候输入框是一个input还好,,他会自动填入,但是现在要求是验证码的6位数字是分开的,原生的一个inpu ...

  6. Android开发 亲测可用--多种方式获取手机短信验证码自动填入

    Android开发 静态注册.动态注册.短信中心库监控获取手机验证码,自动复制到剪切板或或填入输入框. 友情提醒初学者:这是广播接收器的类,写在xml中静态注册或写在启动类的Oncreate方法下动态 ...

  7. 帮你自动填账号密码的黑科技,安卓用户的专属福利

    如果有人问"有什么事情比输入一大串繁琐的账号密码更让人抓狂",那答案一定是:在手机上输入这串密码. 尽管在电脑上输入复杂密码也是一件令人心烦的事,但好歹电脑键盘能够流程地输入所有字 ...

  8. uni-app中本次登录完成后下次登录自动填入用户名和密码

    在uni-app中,可以使用uni-storage(uni-app中的本地存储API)来实现保存用户的用户名和密码,然后在下次登录时自动填充. 下面是一些示例代码: 在登录成功后,将用户名和密码保存到 ...

  9. chrome插件 自动点击页面元素 自动填入内容

    使用较新的  manifest_version:3  ,event 类 项目文件夹: manifest 是配置文件,Bw 是插件图标,background 是一直可以在后台运行的代码.usr_inpu ...

最新文章

  1. php mysql不大小写吗,PHP+MYSQL大小写有关问题
  2. gmr 通信 matlab,matlab使用TCP/IP Server Sockets
  3. 傅里叶变换公式_理解1维傅里叶变换
  4. shell编程-变量
  5. 计算机系十周年聚会邀请函,毕业十周年同学聚会邀请函
  6. 接管任意微软账户并获$5万赏金的故事
  7. c语言 0x12ed,C语言基本数据类型及运算题库有答案.doc
  8. 修正win10部署JDK8(使用JDK文件夹中的自带JRE)
  9. 阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第4节 等待唤醒机制_4_Object类中wait带参方法和notifyAll方法...
  10. 美国航天能力断层严重
  11. 锁相环的输入、输出——以PSCAD的PLL元件为例
  12. 射雕zero找不到服务器,神秘领域《射雕ZERO》未揭秘场景盘点
  13. HTML小游戏2—— 2048网页版(附完整源码)
  14. Python爬取豆瓣top250书籍(beautifulsoup法)
  15. 恶意软件分析实战15-UPack脱壳Lab18-5
  16. cocoscreator中tween详细用法
  17. 木瓜移动跨境行业一周咨讯:字节跳动旗下Fanno欧洲上线、亚马逊中国黑五战绩优秀
  18. 微信登录画面_微信进入界面的图片有什么含义?
  19. 【随机算法梗概】遗传算法通俗的讲解案例~~
  20. 我心中的linux,和我如何用GNU linux工作!【强帖,精彩,真精彩】

热门文章

  1. 30 分钟看懂 CatBoost(Python代码)
  2. 安卓设备互相投屏_安卓投屏免费版下载-批量投屏软件 v7.9.7 免费版 - 下载吧
  3. JFreeChart在Struts2中实现饼状图统计
  4. D3.js上手——饼状图
  5. php企业微信付款到零钱,企业付款到零钱功能介绍及常见问题
  6. winx-1.1.06 released
  7. 聚观早报 |拼多多跨境电商业务正式登陆澳洲;中国加快6G网络研发
  8. 场效应管调光电路图_场效应管做开关电路图(两款电路图分享)
  9. 树莓派 | 串口03 - Windows使用串口助手发送字符给树莓派
  10. 网络拓扑设计----hcip