英文:
how to get copied text from clipboard on Golang [Mac]
问题
首先,我是Go语言的初学者。
我想知道如何在Go语言中获取剪贴板中的复制文本。
我已经搜索了三个包,但我还不知道具体的方法 🥹
"github.com/atotto/clipboard"
"github.com/d-tsuji/clipboard"
"golang.design/x/clipboard"
我只是想像这样获取复制的文本
这是Python代码
copy_string = pyperclip.paste()
帮帮我吧。
英文:
first of all I'm beginner of Golang
I wonder how to get copied text from clipboard on GoLang
I've searched about three packages but I don't know the way yet 🥹
"github.com/atotto/clipboard"
"github.com/d-tsuji/clipboard"
"golang.design/x/clipboard"
I just want to get copied text like this
this is python code
copy_string = pyperclip.paste()
help me guys
答案1
得分: 4
这将取决于您的操作系统。这就是为什么您提到的包有 _unix.go
_windows.go
_darwing.go
等文件。
如果您的问题是关于标准库是否有复制函数,那是没有的!
在Mac上,有两个可用的函数:pbpaste
和 pbcopy
。
因此,如果您想在Mac上进行复制/粘贴而不使用库,可以使用以下代码:
func copy(content string) error {
cmd := exec.Command("pbcopy")
in, err := cmd.StdinPipe()
if err != nil {
return err
}
if err := cmd.Start(); err != nil {
return err
}
if _, err := in.Write([]byte(content)); err != nil {
return err
}
if err := in.Close(); err != nil {
return err
}
return cmd.Wait()
}
func paste() (content string, err error) {
cmd := exec.Command("pbpaste")
out, err := cmd.Output()
return string(out), err
}
希望对您有所帮助!
英文:
That will depend on your OS. That is why packages you mention have _unix.go
_windows.go
_darwing.go
etc.
There is no copy function from std lib if that is your question!
On mac, there are two function available to you:
pbpaste
and pbcopy
.
So if you want to copy/paste on mac without a library:
func copy(content string) error {
cmd := exec.Command("pbcopy")
in, err := cmd.StdinPipe()
if err != nil {
return err
}
if err := cmd.Start(); err != nil {
return err
}
if _, err := in.Write([]byte(content)); err != nil {
return err
}
if err := in.Close(); err != nil {
return err
}
return cmd.Wait()
}
func paste() (content string, err error) {
cmd := exec.Command("pbpaste")
out, err := cmd.Output()
return string(out), err
}
答案2
得分: 1
这是我正在寻找的内容
我希望这段代码能帮助像我这样的人
import "github.com/d-tsuji/clipboard"
text, err := clipboard.Get()
fmt.Println(text)
英文:
This is what I'm looking for
I hope this code will help someone like me
import "github.com/d-tsuji/clipboard"
text, err := clipboard.Get()
fmt.Println(text)
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论