node.js - 向子进程发送密钥快捷方式

Van*_*ing 6 ssh shell keyboard-shortcuts node.js

我的程序生成"ssh"作为子进程,连接到服务器,然后能够写入流并读取其输出.

一切正常.当我向流程流写"ls"时,我得到了一个文件列表.

但是现在,我希望向此进程发送密钥快捷方式,以便我可以在ssh会话中中止正在运行的进程.

我知道这也可以通过流完成,但我在哪里可以阅读我必须发送给流程以使其理解我的关键快捷方式?

谢谢你的帮助!

kan*_*aka 6

对于普通的ssh会话,在换行符之后发送“〜”是转义字符,用于控制ssh程序本身。例如“〜”。将关闭连接。

在手册上搜索“ tilde” 。

更新

在重新阅读您的问题时,我认为您可能希望将Ctrl- *发送到ssh会话中运行的远程进程,而不是与ssh进程本身对话。您可能只能够发送Ctrl键将生成的ASCII序列:

sshprocess.stdin.write("\x03")
Run Code Online (Sandbox Code Playgroud)

Ctrl-C变成ASCII字符0x03。这是从古时候的哑终端开始的。有关ASCII控制序列的更多信息。