You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac系统下Golang获取剪贴板文本方法求助(新手提问)

Mac系统下Golang获取剪贴板文本的实现方法

下面针对你提到的三个包,分别给出对应实现代码,效果等价于Python中pyperclip.paste():

1. 使用 github.com/atotto/clipboard

  • 先安装包:
go get github.com/atotto/clipboard
  • 示例代码:
package main

import (
	"fmt"
	"github.com/atotto/clipboard"
)

func main() {
	// 读取剪贴板文本,对应pyperclip.paste()
	text, err := clipboard.ReadAll()
	if err != nil {
		fmt.Println("读取剪贴板失败:", err)
		return
	}
	fmt.Println("剪贴板内容:", text)
}

2. 使用 github.com/d-tsuji/clipboard

  • 安装包:
go get github.com/d-tsuji/clipboard
  • 示例代码:
package main

import (
	"fmt"
	"github.com/d-tsuji/clipboard"
)

func main() {
	// 直接调用Paste方法获取文本
	text, err := clipboard.Paste()
	if err != nil {
		fmt.Println("读取剪贴板失败:", err)
		return
	}
	fmt.Println("剪贴板内容:", text)
}

3. 使用 golang.design/x/clipboard

  • 安装包:
go get golang.design/x/clipboard
  • 示例代码:
package main

import (
	"fmt"
	"golang.design/x/clipboard"
)

func main() {
	// 先初始化剪贴板
	err := clipboard.Init()
	if err != nil {
		fmt.Println("初始化剪贴板失败:", err)
		return
	}
	// 读取文本格式的剪贴板内容,转成string
	data := clipboard.Read(clipboard.FmtText)
	fmt.Println("剪贴板内容:", string(data))
}

内容的提问来源于stack exchange,提问作者SILENMUS

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 12:43:29