如何将PuTTY编辑文件中的所有文本复制到剪贴板?

除了这个问题之外: PuTTY如何只使用键盘选择文本和复制文本 我想将在PuTTY中看到的文件中的所有文本复制到我的Windows会话中。 在Windows中,可以通过Ctrl + A来完成此操作。 在PuTTY中有什么等效的方法? 编辑: 实际上,我有一个很长的文本文件。
在PuTTY中,我可以使用Ctrl + V向前翻到“下一页”,或者简单地使用箭头向下滚动。我能看到的行数受限于屏幕的高度。如果我能够看到所有行,我就可以直接标记并复制它们。但是我不能...。 可以将其视为一个400页长的Word文档,你只需在文档中点击Ctrl + A,然后就可以全部复制。这就是我在PuTTY中需要的功能。

从我看到的文件中复制所有文本 - 这个要求相当模糊。你是如何“看到”它的?你用什么工具/命令来“看到”它? - Martin Prikryl
@MartinPrikryl 请查看我的编辑。 - avi
请检查我的答案 - 虽然你还没有解释你用什么工具/命令来“查看”文件。 - Martin Prikryl
你实际上已经在几个月前问过这个问题了:http://superuser.com/q/1156010/213663 - Martin Prikryl
您的编辑没有改变任何内容,我们明白您想要什么!这是无法实现的!就像我之前回答的一样。PuTTY无法访问远程编辑器上的其他行,而远程编辑器也无法访问本地剪贴板。这是无法绕过的限制!请使用支持SFTP或具有编辑功能的SFTP客户端的本地编辑器。请参考https://winscp.net/eng/docs/ui_editor。 - Martin Prikryl
我的回答中明确提到了,并且在我对你以前的重复问题的回答中也有提到。 - Martin Prikryl
3个回答

你可以通过点击标题栏图标并选择“复制全部到剪贴板”来选择PuTTY中的所有文本。

putty select all

这将只复制整个滚动缓冲区。如果您的文件比滚动缓冲区更长,您将需要增加它。这可以在"窗口"->"滚动行数"下完成。

putty scrollback


谢谢,这个更好,但这并没有解决问题。我的文件非常长...它复制了整个会话,但从文件中只复制可见部分...试试用一个长文本文件做同样的操作,你会发现并没有全部复制。 - avi
@avi 我更新了我的回答。可能你的滚动条不够长,无法容纳整个文件。你应该考虑使用SCP(WinSCP/pscp.exe)来传输文件。 - mtak
好的,我找到了你不理解我的原因。我使用了nano file.py,它没有显示整个文件...现在我使用cat file.py,你的解决方案有效了。cat命令将整个文件加载到控制台,这样你就可以上下滚动文件,然后我可以标记并复制它。重要的是要强调需要使用cat命令来解决这个问题 :) - avi
这个和http://superuser.com/questions/741526/copy-the-entire-content-of-a-file-opened-in-putty-to-clipboard/741532#741532是一样的吗?下次可能要做个更好的搜索 :) - mtak
在Linux上,Putty没有右键点击并复制全部内容到剪贴板的选项。 - user1502776

使用SSH终端复制文件内容并不是最好的方法。使用SFTP客户端下载文件会更好。甚至可以直接编辑文件(如果这是最终目标)。

无论如何,回答你的问题:

  • 在 PuTTY 中,在连接状态下,进入 更改设置 > Windows > 控制窗口中的滚动行数 > 滚动行数 并输入足够多的行数以适应整个文件。
  • 在命令提示符上键入 cat 文件名
  • 使用 复制全部到剪贴板 命令。

如果会话的 "历史记录" 中已经有内容,请事先清除它:

  • 按下 Ctrl+L 清除可见屏幕。
  • 使用 清除滚动区 命令。

您不能复制在PuTTY控制台中看到的文本编辑器的全部内容。

  • 对于PuTTY来说,"屏幕"是一个"黑盒子"。它不知道有比它看到的更多内容。
  • 远程编辑器无法访问本地剪贴板。

enter image description here

去日志记录 -> 进行上述设置。