Command-Line

將文件從命令行複製到剪貼板

  • October 28, 2021

在 GUI 文件管理器中,可以選擇一些文件,按 Ctrl-C(據說會將有關文件的資訊複製到剪貼板),然後導航到另一個文件夾並按 Ctrl-V,然後將文件複製到該文件夾中目錄。

作為一個實驗,在文件管理器中復製文件後,可以切換到文本編輯器 - 在那裡按 Ctrl-V 會粘貼絕對文件名列表。反向過程(從文本編輯器複製文件列表並將它們粘貼到文件管理器)不起作用,這可能是由於不同的目標原子

練習的目標是能夠從命令行複制一些文件,例如

find ${PWD} -name "*.txt" | xclip <magic parameters>

然後切換到文件管理器並使用 File->Paste 將它們全部複製到目錄中。

所以,問題是:xclip我需要指定(或其他程序)的哪些參數,以便文件管理器將選擇辨識為文件列表並啟用其粘貼菜單項?

或者,是否有一個低級工具可以檢查 X 選擇的內容並查看它目前包含哪些數據?

是的,基本上,您需要提供 CLIPBOARD 選擇作為

  • text/uri-list內容為
/path/to/file1
/path/to/file2
  • application/x-kde-cutselectionx-special/gnome-copied-files內容copy\nfile://$path1\nfile://$path2\0cut\nfile://$path1\nfile://$path2...\0

有了xclip你可以用類似的東西來實現這一點

find "$PWD" -name "*.pdf"| xclip -i -selection clipboard -t text/uri-list

我還發現這個loliclip命令看起來很有希望,但是雖然我可以檢索這些值,但我無法儲存它們並成功地從中檢索loliclip它們pcmanfm

您還應該能夠在幾行perl-tk.

引用自:https://unix.stackexchange.com/questions/53503