在mac终端模拟键盘按下

问题描述 投票:2回答:3

我正在运行一些模拟,需要手动键盘输入才能更改参数(烦人)。

有没有办法模拟键盘按下,以便我可以用bash脚本运行模拟?

macos bash keyboard terminal applescript
3个回答
6
投票

虽然我不推荐它,你可以做这样的事情(它只列出你的主目录的内容)

tell application "Terminal"
    activate
    do script "cd ~" -- the command to run
    delay 5 -- maybe throw in a delay to let the process start up
    tell application "System Events" to keystroke "ls -la" & return -- the keystrokes to simulate
end tell

然而,这相当于训练猫在键盘上行走的数字。代码不知道终端发生了什么。它只是“键入”某些内容并按下返回,完全无视。

因此,如果您有任何其他方式将输入传递给流程,请使用它。我刚刚发布了这个,因为你确实要求AppleScript解决方案。我只是怀疑AppleScript是正确的解决方案。


1
投票

也许你可以使用expect

还有echo | <cmd>


1
投票

事实证明我可以从bash一直做到:

./program << ENDINPUT
$input1
$input2
$input3
ENDINPUT
© www.soinside.com 2019 - 2024. All rights reserved.