我有一个当前的perl脚本,我正在cygwin的Windows机器上执行该脚本,该脚本正在打开一个新的cygwin终端窗口并将ssh'进入远程机器。
尝试在Mac上复制mintty命令。
if ($noexec) {
system("echo mintty -s 160,40 $cursor -o
BackgroundColour=$color -o
Title='\"$title\"' -e ssh $url \&");
} else {
system("mintty -s 160,40 $cursor -o BackgroundColour=$color -o
Title=\"$title\" -e ssh $url \&");
}
答案 0 :(得分:1)
这是代码的简单翻译,可以使用Applescript执行任务,如建议的副本Running a command in a new Mac OS X Terminal window
中所述if ($noexec) {
system(qq{echo osascript -e 'tell application "Terminal" to do script "ssh $url \& "'});
} else {
system(qq{osascript -e 'tell application "Terminal" to do script "ssh $url \& "'});
}
在后台运行ssh
命令似乎很奇怪。也许您应该将\&
替换为; exit
。
我不确定mintty
选项的含义(我想将几何设置为160x40并选择一个特定的光标吗?),所以我没有尝试实现它们。 https://superuser.com/questions/1188772/mac-command-to-change-the-background-color-in-a-terminal显示了如何通过Applescript在终端中设置背景颜色。
如果mintty
或Windows ssh
确实接受要连接的URL(也许像ssh://username@hostname
之类的东西),则必须将其拆开并仅提取可接受的参数。 U * x ssh
(类似于没有username@hostname
协议说明符的ssh://
)。