|Hacker实例:自动按YubiKeys( 四 )
触发脚本
如果用手指按一下YubiKey不太令人满意 , 则在机械键盘的另一端按一个键 。 如果只要敲击键盘上的一个键就可以触发YubiKey , 那就太酷了 。
如果使用TKL布局 , 则在键盘的右上角具有''打印屏幕'' , ''滚动锁定''和''暂停'' , 所有这些在2020年都没有多大意义 , 并且可以重新映射 。
实例中使用一个名为Karabiner-Elements的程序来帮助进行这种重新映射 。 就像该项目的硬件部分一样 , 它也具有Rube Goldberg风格 。
使用用户界面 , 在''简单修改''选项卡下 , 可以将''从键''更改为''暂停'' , 将''至键''更改为'' f14'' 。
然后切换到''其他''选项卡 , 然后单击''打开配置文件夹(?/.config/ karabiner)'' 。 在这里找到一个名为的文件karabiner.json 。
在profiles.rules键下 , 可以添加以下JSON:
{ ''description'': ''F14 to trigger Yubikey'', ''manipulators'': [ { ''from'': { ''key_code'': ''f14'', ''modifiers'': { ''optional'': [''any''] } }, ''to'': [ { ''shell_command'': ''osascript /Users/YOUR_USERNAME/bin/yubikey.scpt'' } ], ''type'': ''basic'' } ] },在其中 , ~/bin/yubikey.scpt可以编写一个Applescript来调用shell脚本 , 如下所示:
do shell script ''/bin/sh ~/bin/yubikey.sh 2>&1 &''为什么Applescript会调用Shell脚本?当直接从Karabiner Elements启动shell脚本时 , 它打开的新实例 , Terminal.app并将焦点从提示输入YubiKey的窗口移开 。 这将使所有内容在后台运行 。
最后 , 在~/bin/yubikey.sh有:
#!/bin/bash curl '' finger.localdomain/press'' --silent >> /dev/null通过制作了一个YubiKey提示进行演示 , 它也可以在真实的YubiKey提示中使用 。 这是伪造的YubiKey提示符的代码 , 以防万一由于某些程序需要制作伪造的YubiKey提示符:
#!/bin/bash printf ''YubiKey for 'bert': '' read yubikey green=`tput setaf 2` reset=`tput sgr0` echo ''${green}SUCCESS${reset}''有了该shell脚本 , 也就可以从其他地方调用它 。 iTerm2具有称为Triggers的功能 , 该功能可以根据与终端中的正则表达式匹配的文本执行操作 。 因此 , 可以编写一个正则表达式来监听'' Yubikey for'' , 并使其运行相同的脚本 , 而无需完全按下按钮 。
另一个选择是制作一个自定义的Chrome扩展程序 , 该扩展程序等待某些请求YubiKeys的URL , 并使浏览器在后台获取到我们的HTTP端点 。
总结
该实例中通过软硬件实例 , 制作了一个自动''按''YubiKeys的的工程 , 也许对其他人来说这是没有什么蛋用的东西 。 但是这个解决问题的思路和实例动手能力则正是Hacker精神所在 , 这也是我们需要学习的东西 。 介绍该完整实例过程希望对大家都有所启发帮助 。
推荐阅读
- 爱集微APP|负责人确认小米全自动智能门锁已经支持Siri语音开锁
- 创作|知乎上线视频创作工具 图文可自动生成视频
- 舟谊会展|泰国曼谷工业自动化机器人展览会Maintenance Resilience
- 智能电视|一招教你,彻底解决智能电视自动安装APP的困扰
- cnBeta|前苹果工程师/自动修正创造者开发首款App:名为Up Spell的文字游戏
- 广东鸣世科技有限公司|瑞泽鸣世未来对非标自动化设备的需求
- 风之翼|AI全自动化、程序化交易策略,轻松组合成为一个独立的自动交易机器人
- 自动驾驶|智能驾驶技术都有哪些我们来看下
- 屏幕|苹果挖到了威震天?申请“自动恢复屏幕”专利,只用于折叠屏手机
- 小红帽云控系统|抖音全自动云控系统——如何拓客引流?