一尘不染

如何在Go中将文本复制到剪贴板或从剪贴板复制文本?[关闭]

go

在我的Go语言命令行应用程序中,我需要能够使用Go将某些文本片段复制到系统剪贴板。基本上类似于PyperClip,但适用于Go。

我正在寻找与平台无关的解决方案!任何帮助将是巨大的:)


阅读 476

收藏
2020-07-02

共1个答案

一尘不染

一个项目(仅适用于Windows和Mac)似乎正在接近您想要的:atotto/clipboard

提供复制和粘贴到剪贴板的Go。

func ReadAll() (string, error)
func WriteAll(text string) error

剪贴板_linux.go类中提供Linux支持:xsel --output/input --clipboard系统命令的简单包装。


另一种方法:尝试利用第三方库,例如GLFW

一个免费的,开源的,多平台的库,用于打开窗口,创建OpenGL上下文和管理输入

它的Go包装器glfw3确实提供了一个clipboard.go带有多平台方法的文件。

func (w *Window) SetClipboardString(str string)
func (w *Window) GetClipboardString() (string, error)

但这将是在GLFW窗口的上下文中,当然不是任何shell窗口。

2020-07-02