Scripting
如何在不使用 xsel 或任何第三方工具的情況下使用 Red Hat 上的命令行將字元串複製到 X Window 剪貼板?
在無法安裝新工具的受限系統上,如何使用命令行或至少以自動化方式將字元串複製到 X Window 剪貼板(與
Ctrl
+C
/Ctrl
+一起使用的剪貼板),而不使用 xsel 或任何V
其他這樣的第三方工具?我正在使用紅帽。
我很難相信僅使用本機 Linux 無法完成這樣一項基本任務。
Python 標準庫包含該
tkinter
模組( Python 2 中的Tkinter),您可以通過它訪問 X 剪貼板。python3 -c 'import sys, tkinter; sys.stdout.write(tkinter.Tk().clipboard_get())' python2 -c 'import sys, Tkinter; sys.stdout.write(Tkinter.Tk().clipboard_get())'
您還可以設置剪貼板內容,但這有點侵入性,因為剪貼板內容歸正在執行的應用程序所有。諸如
xsel
在擁有剪貼板的同時讓後台程序執行的程序。這是一個簡單的程式碼片段,您需要繼續執行,直到您不再對內容感興趣;完成後關閉視窗。echo -n 'new clipboard content' | python3 -c 'import tkinter; w = tkinter.Tk(); w.clipboard_clear(); w.clipboard_append(input()); w.mainloop()' echo -n 'new clipboard content' | python2 -c 'import Tkinter, sys; w = Tkinter.Tk(); w.clipboard_clear(); w.clipboard_append(sys.stdin.read()); w.mainloop()'
(在 Python 中有更好的方法來訪問剪貼板,例如pyperclip,它是跨平台的並且不需要顯示視窗,但它們不是標準庫的一部分。)