我想创建一个url链接,用于启动终端(从网页或浏览器,如chrome或safari)和ssh到一个框并启动远程命令(例如ls
) ,在终端,它看起来像:
ssh user@1.2.3.4 'ls'
我试过了:
<a href='ssh://user@1.2.3.4 "ls"'>SSH with ls</a>
但这没有任何作用。 这工作(没有任何命令):
<a href='ssh://user@1.2.3.4'>SSH</a>
这可能在HTML中吗?我也会接受使用Javascript的答案。
答案 0 :(得分:5)
我查看过多个来源并尝试了不同的组合,并进行了以下理解
Terminal.app
处理SSH网址,并且没有文档支持命令使用iTerm
进行您可以在同一
中创建新的配置文件并启用SSH URL处理程序在样本页面下面使用
<html>
<body>
<a href="ssh://vagrant@vm/ls -alh">ls -alh</a>
</body>
</html>
以下iTerm
SSH个人资料
/usr/bin/ssh $$USER$$@$$HOST$$ $(echo $$PATH$$ | tr -d '/')
结果是
当然你想运行一个python脚本或其他东西并传递给它们这些值,并让它做其他功能。但这显示了如何实现这样的设置
主要参考资料
url scheme for ssh: Calling command on remote host
https://unix.stackexchange.com/questions/75668/why-doesnt-the-ssh-command-follow-rfc-on-uri
https://groups.google.com/forum/#!topic/iterm2-discuss/r0Rk_WZaGWk
http://www.rubicode.com/Software/Bundles.html#RCDefaultApp
https://superuser.com/questions/379342/setting-iterm2-as-the-default-terminal-osx-lion
答案 1 :(得分:0)
我不太确定这是否有帮助,但您是否考虑过使用代理/网桥使用SSH连接服务器?例如:https://github.com/novnc/websockify
Websockify是TCPS代理/桥接的WebSocket。这允许浏览器 连接到任何应用程序/服务器/服务。
通过这种方式,您可以直接从JS代码与服务器进行通信,而不是依赖于SSH客户端。