我在 MacOS Sierra 中使用 iTerm2。我希望能够将一些文本注入控制台(例如执行一串命令)。
理想情况下,我可以有一个本地文件
# local.txt
echo Hello World
我想让 iTerm2 在我的控制台窗口选项卡中输入这些字符。
我查看了 iTerm2 文档,只找到了“触发器”选项(不是最佳的),以及必须用 AppleScript 编写的脚本,因此是不必要的麻烦。
我只想让 iTerm2 自动将文本文件的内容输入控制台(就像“宏”脚本)。
这可能吗?我怎样才能做到这一点?
答案1
root
例如,这可以使用 TIOCSTI ioctl (as ) 来完成和ttywrite
可以注入命令
% echo echo hello world > local
% sudo ttywrite $(tty) < local
echo hello world
% echo hello world
hello world
%
尽管您可能会瞄准其他 TTY 而不是当前 TTY(或者可能会使用...关闭回显stty
)
答案2
你可以看看我的回答这里。
由于我使用 iTerm2,我想出了:
你也可以有一个像这样的脚本~/test.py
#!/usr/local/bin/python3
print("echo hello world")
然后在 iTerm2 菜单 Session->Run Co-Process 中将该脚本作为协进程执行,并将脚本指定为~/test.py
.
快乐编码!