繁体   English   中英

Windows 10 Linux子系统 - Python - 字符串到计算机剪贴板

[英]Windows 10 Linux subsystem - Python - String to computer clipboard

我有一个python脚本,我想在计算机的剪贴板中放置一个字符串。 我在Linux,Mac和以前在Windows中使用cygwin工作。 我必须修改一行代码才能使它在各自的系统中运行。 我无法在Windows 10的本机Linux子系统上将字符串复制到剪贴板。 下面的行导致错误:sh:1:无法创建/ dev / clipboard:权限被拒绝。 知道如何修改这条线吗?

os.system("echo hello world > /dev/clipboard")

要在Windows上获取剪贴板内容,您可以使用win32clipboard

import win32clipboard
win32clipboard.OpenClipboard()
cb = win32clipboard.GetClipboardData()
win32clipboard.CloseClipboard()

要设置剪贴板:

win32clipboard.OpenClipboard()
# win32clipboard.EmptyClipboard() # uncomment to clear the cb before appending to it
win32clipboard.SetClipboardText("some text")
win32clipboard.CloseClipboard()

如果您需要便携式方法,可以使用Tkinter ,即:

from Tkinter import Tk
r = Tk()
r.withdraw()
# r.clipboard_clear() # uncomment to clear the cb before appending to it
# set clipboard
r.clipboard_append('add to clipboard')
# get clipboard
result = r.selection_get(selection = "CLIPBOARD")
r.destroy()

事实证明这两种解决方案都适用于Windows 10.最后一种解决方案适用于Mac,Linux和Windows。

还有pyperclip库。 我在几个工具中使用它,它做了一个非常简单的工作。

这是一个lib

**pip install clipboard**


import clipboard
clipboard.copy("abc")  # now the clipboard content will be string "abc"
text = clipboard.paste()  # text will have the content of clipboard

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM