0
我希望在cli中複製文件並將其與ctrl + v粘貼到文件資源管理器中,我發現下面的java代碼可以做到這一點,如何在linux shell中做到這一點?如何模擬ctrl + c在bash中複製文件
public static void putFileToSystemClipboard(final File fileOut) throws Exception {
final Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
final ClipboardOwner clipboardOwner = null;
final Transferable transferable = new Transferable() {
public boolean isDataFlavorSupported(final DataFlavor flavor) {
return false;
}
public DataFlavor[] getTransferDataFlavors() {
return new DataFlavor[] { DataFlavor.javaFileListFlavor, DataFlavor.stringFlavor };
}
public Object getTransferData(final DataFlavor flavor) {
if (flavor.equals(DataFlavor.javaFileListFlavor)) {
final List<String> list = new ArrayList<>();
list.add(fileOut.getAbsolutePath());
return list;
}
if (flavor.equals(DataFlavor.stringFlavor)) {
return fileOut.getAbsolutePath();
}
return null;
}
};
clipboard.setContents(transferable, clipboardOwner);
}
http://superuser.com/questions/288320/whats-like-osxs-pbcopy-for-linux – ewcz
@ewcz,我知道xclip,但我只把字符串放到剪貼板,看我的java代碼,我把文件放到我的剪貼板上,然後我可以在文件資源管理器中粘貼(ctrl + v),這就是diff – asullaherc
據我瞭解你的代碼,它把絕對路徑放在剪貼板?在這種情況下,可能是'readlink -f your_file | xclip -selection clipboard' should work - here'readlink -f'返回'your_file'的絕對路徑... – ewcz