我有一个 python 脚本,我想在计算机的剪贴板中放置一个字符串。我在 Linux、Mac 和以前使用 cygwin 在 Windows 中工作。我不得不修改一行代码以使其在各自的系统中工作。 我无法将字符串复制到 Windows 10 的 native Linux 子系统上的剪贴板。 下面的行导致错误:sh: 1: cannot create/dev/clipboard: Permission denied。知道如何修改这一行吗?
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 上运行。
关于python - Windows 10 Linux 子系统 - Python - 字符串到计算机剪贴板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44145667/