4

我需要将大型日志文件中的所有文本复制到剪贴板。我有一个到 Linux 的远程连接,并且只使用控制台终端。我想要的是类似的东西Select all -> Copy

在我使用的 emacs 中F10 -> Edit -> Select All, and then F10 again -> Edit -> Copy。但它没有进入我的剪贴板,无法将其粘贴到我的本地 Windows 实例中(它适用于屏幕上显示的内容;无需滚动)。

nano或emacs有更好的方法吗?

干杯

4

2 回答 2

4

Emacs 有一个鲜为人知的功能,它可以让你的生活更轻松。您实际上可以通过 ssh 远程打开文件,就像打开本地文件一样容易,而且开销很小。所以只要你可以从本地emacs复制到剪贴板,你就可以做你需要的。

要远程打开文件,只需像往常一样点击 Cx Cf。但是你想要的文件是这样的

/ssh:otherserver.some.org:/path/to/file.log

whereotherserver.some.org替换为实际的服务器名称,/path/to/file.log是您的实际路径。第一次连接后,选项卡完成也可以工作。编辑的工作方式与处理本地文件(包括复制)完全相同,只是在保存时,文件会通过 ssh 复制回远程。

该设施称为“ TRAMP ”,因此将存在名称中带有“tramp”的隐藏缓冲区。另请注意,tramp 可以使用其他几种方法连接到文件,例如plinkWindows,以及su以其他用户身份编辑文件。

这里讨论了您的问题的其他选项: Getting Items on the Local Clipboard from a Remote SSH Session,或者甚至可能在这里: http ://winscp.net/eng/docs/task_edit 。

于 2013-01-14T14:28:11.720 回答
-1

如果您只有一个终端会话,那么 emacs、nano 或任何其他在 Linux 端运行的程序都无法将文本发送到 Windows 剪贴板。

您的选择是通过 X11 或 VNC 连接,在这种情况下,可以在 Windows 和 Linux 程序之间共享剪贴板,或者通过其他方式复制文件。

如果您通过 ssh 登录,例如,您可以ssh thelinuxmachine cat /the/log/file/locatioin > logfile.txt在 windows 命令 shell 中运行。使用 scp 客户端(例如http://winscp.net/ )连接到 linux 机器可能也可以。

于 2013-01-14T14:07:58.807 回答