【问题标题】:Have a Linux shell script stuff a string into a Windows user's copy/paste buffer让 Linux shell 脚本将字符串填充到 Windows 用户的复制/粘贴缓冲区中
【发布时间】:2011-02-26 00:59:46
【问题描述】:

我们现在有一个脚本,我们的 Windows 用户通过 putty 在 Linux 主机上运行它。脚本有时会生成一个字符串,用户必须将其复制并粘贴到 Windows 应用程序中。

没有在 Windows 机器上运行完整的 X 显示服务器,我想修改脚本,以便将字符串自动填充到 Windows 用户的复制/粘贴缓冲区中,这样对用户来说更方便等等我们降低了错误率(工作流程已经够笨拙了,我们希望减少一点)。

以下是我考虑的解决方案:

  1. 为此在 Windows 端运行一个成熟的 X 显示管理器(如果存在一个几乎不可见的实用程序来启用仅此一项功能那就是另一回事了)
  2. 让用户停止运行 Windows
  3. 重写任何其他应用程序

我可以完全控制 Windows 用户的环境(可以设置我需要的任何 putty 设置)以及 Linux 主机和两者之间网络中的每个节点。

【问题讨论】:

    标签: windows linux putty paste


    【解决方案1】:

    如果我必须这样做,我可能会获取 putty 的资源并对其进行修改以适应它。

    我不认为你能轻松做到这一点;除非在 Linux 机器上编写一个小脚本,该脚本将打开一个到小型 Windows 守护程序的套接字并将文本发送到 Windows 剪贴板中。

    【讨论】:

    • 实现 PuTTY 增强功能的最优雅方式可能是添加“ANSI 打印机输出到剪贴板”选项。然后,Linux 脚本将只使用 VT102 打印机转义来分隔它想要转到剪贴板的文本。
    • @caf:我喜欢这个主意——它简单整洁,而且能胜任。
    【解决方案2】:

    如果远程脚本不需要完整的终端支持而只进行简单的stdin/stdout 操作,那么您可以使用plink 提供一个简单的纯文本界面,该界面可能可以编写脚本比完整的 PuTTY 窗口更容易。

    【讨论】:

    • 如果使用 plink,您可以使用 clip.exe 将输出放入粘贴缓冲区(您可能需要下载并安装它)。 plink login.example.com -l fred echo hello, world | clip
    【解决方案3】:

    http://ericmason.net/2010/04/putty-ssh-windows-clipboard-integration/

    这家伙的脚本将腻子修补到上面建议的内容。我认为只有一个可以在 Windows 中安装的打印机驱动程序来将文本发送到剪贴板会更优雅,而不是修补腻子,但这很有效!

    【讨论】:

      猜你喜欢
      • 2019-12-26
      • 1970-01-01
      • 2018-05-31
      • 1970-01-01
      • 2012-08-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-27
      相关资源
      最近更新 更多