php虚拟键盘输入,[问题] bash下如何模拟键盘输入
你的位置:
问答吧
-> Shell
-> 问题详情
[问题] bash下如何模拟键盘输入
我想要在bash下模拟键盘输入。
现在有两个实例。
1. 如果我在使用未配置sudo nopasswd的情况下。我用sudo 执行命令然后在标准输出位置,提示我用键盘标准输入密码。我想在不用自己从键盘输入,自动的把密码填入并且确认。
2.如果我在执行某个程序操作后,提示我Y/N,我想自动输入N到标准输入。
请问这样的操作应该怎么实现~?~~?
作者: firefoxmmx
发布时间: 2009-01-23
lz找些expect的资料吧,如果编程功力不错的话c语言也可以实现
作者: dajun
发布时间: 2009-01-23
expect 应该没有问题
作者: bosomfriend
发布时间: 2009-01-23
感谢楼上2位。。我去试试
作者: firefoxmmx
发布时间: 2009-01-24
感谢楼上2位。。我去试试
作者: firefoxmmx
发布时间: 2009-01-24
另外遇到个问题。。
具体实例发出来给大家看看。
代码:
spawn env LANG=en_US sudo apt-get autoremove amsn
expect "*\[Y/n\]\?*"
send "y\n"
exit 0下面是输出结果
代码:
$ expect test1.ex
spawn env LANG=en_US sudo apt-get autoremove amsn
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libsnack2 amsn-data tcl8.5 tk8.5 tcl-tls
The following packages will be REMOVED:
amsn amsn-data libsnack2 tcl-tls tcl8.5 tk8.5
0 upgraded, 0 newly installed, 6 to remove and 5 not upgraded.
After this operation, 20.5MB disk space will be freed.
Do you want to continue [Y/n]?他会在这里停止掉。
我觉得是没有正确匹配的原因。(expect "Do you want to continue [Y/n]? " send "y\n" 已经用过了。。还是一样的)
我想可能是回馈信息是一段话的原因吧。一句话的可以匹配比如SUDO。。但是一段话的用正则表达式好像都没有用?~
应该怎么来匹配这个一段话中的[Y/n]呀??
作者: firefoxmmx
发布时间: 2009-01-24
引用:
作者: firefoxmmx
另外遇到个问题。。
具体实例发出来给大家看看。
代码:
spawn env LANG=en_US sudo apt-get autoremove amsn
expect "*\[Y/n\]\?*"
send "y\n"
exit 0下面是输出结果
代码:
$ expect test1.ex
spawn env LANG=en_US sudo apt-get autoremove amsn
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
libsnack2 amsn-data tcl8.5 tk8.5 tcl-tls
The following packages will be REMOVED:
amsn amsn-data libsnack2 tcl-tls tcl8.5 tk8.5
0 upgraded, 0 newly installed, 6 to remove and 5 not upgraded.
After this operation, 20.5MB disk space will be freed.
Do you want to continue [Y/n]?他会在这里停止掉。
我觉得是没有正确匹配的原因。(expect "Do you want to continue [Y/n]? " send "y\n" 已经用过了。。还是一样的)
我想可能是回馈信息是一段话的原因吧。一句话的可以匹配比如SUDO。。但是一段话的用正则表达式好像都没有用?~
应该怎么来匹配这个一段话中的[Y/n]呀??似乎\r是回车啊。
作者: apzc2529
发布时间: 2009-01-25
\r我也试过。。
无效。
就后面一个y/n弄不掉。。后来我用PYTHON脚本写问题解决了。。(不过,遇到一个问题。就是看不到完整的标准输出信息.看到的是输出的截取)
作者: firefoxmmx
发布时间: 2009-01-28
楼主可以googel “xrgsu expect”,有一个xrgsu的上网脚本可以参考。另外请教楼主的Python实现。
代码:
#! /usr/bin/expect
spawn myxrgsu -a
expect "Please input your user name:"
send "your name\r"
expect "Please input your password:"
send "your password\r"
expect "Use DHCP,1-Use,0-UnUse(Default: 0):"
send "\r"
expect "Use default auth parameter,0-Use 1-UnUse(Default: 0):"
send "\r"
expect "LogOff:"
puts stdout "Authenticate SUCCESSFULLY!"
sleep 360000
#end
作者: apzc2529
发布时间: 2009-01-31
php虚拟键盘输入,[问题] bash下如何模拟键盘输入相关推荐
- 模拟linux设备按键工具,linux下如何模拟按键输入和模拟鼠标
linux下如何模拟按键输入和模拟鼠标 发布时间:2008-08-19 21:11:54来源:红联作者:anopup 查看/dev/input/eventX是什么类型的事件, cat /proc/bu ...
- ubuntu下qt模拟键盘按键按下_基于QT的跨平台虚拟键盘设计与实现
摘 要: 针对QT在Windows.Linux.以及嵌入式Linux-arm等不同平台下没有开源.高效的虚拟键盘(包含中文输入法),以及QT版本升级造成代码不兼容等问题,设计并实现了一个跨平台的虚拟 ...
- 天庭云计算机键盘无法输入,Win7系统下无线键盘失灵无法输入的解决方法
如今市面上无线产品广泛,什么无线鼠标,无线wifi等等,这些无线产品可以给用户们带来更多的方便,比如无线键盘,它通过红外线或无线电波将输入信息传送给特制的接收器,无线键盘的便捷性是有线键盘不可比拟的, ...
- linux模拟手柄输入,linux下如何模拟按键输入和模拟鼠标
查看/dev/input/eventX是什么类型的事件, cat /proc/bus/input/devices 设备有着自己特殊的按键键码,我需要将一些标准的按键,比如0-9,X-Z等模拟成标准按键 ...
- linux下如何模拟按键输入和模拟鼠标?
转贴请注明出处: blog.csdn.net/chenzhixin 查看/dev/input/eventX是什么类型的事件, cat /proc/bus/input/devices 设备有着自己特殊的 ...
- ubuntu下qt模拟键盘按键按下_基于Linux+Qt软键盘设计及其实现.pdf
计算机与现代化 YUXIANDAIHUA 2011年第12期 JISUANJI 总第196期 文章编号:1006-2475(2011)12-0179-03 基于Linux Qt的软键盘设计与实现 田福 ...
- adb 输入回车命令_adb命令模拟按键输入keycode
例子: //这条命令相当于按了设备的Backkey键 adb shell input keyevent 4 //可以解锁屏幕 adb shell input keyevent 82 //在屏幕上做划屏 ...
- python如何模拟键盘输入_用python代码模拟键盘输入
今天在写代码时遇到一种情况,代码只能通过外部操作来判断,这时我就想到用python的代码来模拟一个键盘输入的值. 安装好,就可以直接上代码了:import win32api import win32c ...
- vbs脚本在服务器上虚拟按键,怎么用VBS代码实现模拟键盘按键?
1.基本键:一般来说,要发送的按键指令都可以直接用该按键字符本身来表示,例如要发送字母"x",使用"WshShell.SendKeys x"即可.当然,也可直接 ...
最新文章
- android edittext限制字节_android EditText输入限制
- mysql怎么实现事务序列化_MySQL 架构 - 事务处理
- 查看ubuntu linux开放的端口以及控制端口范围
- java system.out.read_求教Java高手,关于输入流的read的问题,为什么while循环体里面的两个System.out.println没有打印出来?...
- API设计原则 - Qt官网的设计实践总结
- 默认参数,命名参数,可变参数
- Firefly 3288又一次制作android和lubuntu双系统固件
- 外呼机器人起名_电销外呼机器人如此受欢迎,今天终于知道原因了
- 呕心沥血博一文--MySQL主从异步复制
- vim怎么把一个写的代码文件另存到任意文件夹里?
- ARC098E Range Minimum Queries
- SlickEdit基本设置
- Blender建模汇总
- C++之个人银行账户管理程序(二)
- CTU CU CB PU TU
- 多元统计分析R语言建模| 1 多元数据的数学表达
- 【教程】win10 固态硬盘卡机卡死卡顿的真正原因!
- 关于深度学习(deep learning)
- 测试开发之前端——No8.HTML5中的媒介事件
- 产品设计有哪些原则?
热门文章
- sql 存储过程 分页
- Java ArrayList去重
- fedora下重用ssh连接 类似secureCRT的clone session功能
- Linux文件系统只读Read-only file system的解决方法
- Table表头与数据列对齐问题解决方案
- python异常之ModuleNotFoundError: No module named ‘test01inner02‘
- vue打包后element-ui部分样式(图标)异常问题
- FTP错误 [ftp: connect: No route to host] 解决方法
- 如何避免在Excel VBA中使用选择
- 在JavaScript中使用“原型”还是“ this”?