Answers:
当您在文件管理器中的文件上按Ctrl-C时,该文件的内容不会复制到剪贴板。一个简单的测试:在文件管理器中选择一个文件,按Ctrl-C,打开一个文本编辑器,按Ctrl-V。结果不是文件的内容,而是文件的完整路径。
实际上,情况要复杂一些,因为您不能做相反的事情-从文本编辑器复制文件名列表并将其粘贴到文件管理器中。
要将某些数据从命令行复制到X11剪贴板,您可以使用xclip
command,可以将其安装在
sudo apt-get install xclip
复制文件内容或某些命令的输出到剪贴板使用
cat ./myfile.txt|xclip -i
然后可以使用鼠标中键将文本粘贴到某处(这称为“主要选择缓冲区”)。
如果要将数据复制到“剪贴板”选择中,以便可以使用Ctrl-V将其粘贴到应用程序中,则可以
cat ./myfile.txt|xclip -i -selection clipboard
为了能够从命令行复制文件并将其粘贴到文件管理器中,您需要指定正确的“目标原子”,以便文件管理器能够识别剪贴板中的数据,并以正确的格式提供数据-幸运的是,在文件管理器中复制文件的情况下,它只是一个绝对文件名列表,每个文件名都换行,这很容易使用find
命令生成:
find ${PWD} -name "*.pdf"| xclip -i -selection clipboard -t text/uri-list
(至少这在KDE中对我有效)。现在,您可以包装成一个小的脚本,可以调用它,例如cb
:
#!/bin/sh
xclip -i -selection clipboard -t text/uri-list
然后将其放入~/bin
,在其上设置可执行位并按如下方式使用它:
find ${PWD} -name "*.txt"| cb
很好,不是吗?
xclip-copyfile
和复制文件xclip-pastefile
。我虽然还没有真正使用它,但这可能是一个解决方案。
xclip-copyfile
then 时它确实起作用xclip-pastefile
,但似乎不适用于Ubuntu文件管理器...