Question Quelle est la ligne de commande équivalente à la copie d'un fichier dans le presse papier? [dupliquer]


Cette question a déjà une réponse ici:

Qu'est-ce que la ligne de commande équivaut à appuyer sur CTRL + C sur un fichier dans le gestionnaire de fichiers pour que le fichier (pas le nom de fichier) soit copié dans le presse-papier?

Une situation où cela peut être utile et rapide, par exemple, est lorsque vous voulez copier dans le presse-papiers un fichier du répertoire que vous êtes dans le terminal pour coller rapidement le fichier dans le répertoire que vous avez dans le gestionnaire de fichiers. Il y en a d'autres


78
2017-11-01 07:46


origine


Cela ne ressemble vraiment pas à un doublon pour moi. Une réponse concerne le copier-coller général en général, et celui-ci concerne copier un fichier sujet spécifique - Ulysse BN
Je seconde Ulysse - Yasser Hussain


Réponses:


Lorsque vous appuyez sur Ctrl-C sur un fichier du gestionnaire de fichiers, le contenu du fichier N'EST PAS copié dans le presse-papiers. Un test simple: sélectionnez un fichier dans le gestionnaire de fichiers, appuyez sur Ctrl-C, ouvrez un éditeur de texte, appuyez sur Ctrl-V. Le résultat n'est pas le contenu du fichier mais son chemin complet.

En réalité, la situation est un peu plus compliquée car vous ne pouvez pas faire le contraire - copiez une liste de noms de fichiers à partir d'un éditeur de texte et collez-les dans le gestionnaire de fichiers.

Pour copier des données de la ligne de commande vers le presse-papier X11, vous pouvez utiliser xclip commande, qui peut être installée avec

sudo apt-get install xclip

copier contenu d'un fichier ou sortie d'une commande à utiliser dans le presse-papier

cat ./myfile.txt|xclip -i

le texte peut ensuite être collé quelque part à l'aide du bouton central de la souris (appelé "tampon de sélection principal").

Si vous souhaitez copier des données dans la sélection "presse-papiers", vous pouvez les coller dans une application avec Ctrl-V.

cat ./myfile.txt|xclip -i -selection clipboard

Être capable de copier des dossiers à partir de la ligne de commande et collez-les dans un gestionnaire de fichiers, vous devez spécifier un "atome cible" correct afin que le gestionnaire de fichiers reconnaisse les données dans le presse-papier et fournisse également les données au bon format. un gestionnaire de fichiers c'est juste une liste de noms de fichiers absolus, chacun sur une nouvelle ligne, quelque chose de facile à générer en utilisant find commander:

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

(au moins cela fonctionne pour moi dans KDE). Maintenant, vous pouvez envelopper dans un petit script que vous pouvez appeler, par exemple, cb:

#!/bin/sh
xclip -i -selection clipboard -t text/uri-list

alors vous le mettez dans ~/bin, définissez le bit exécutable dessus et utilisez-le comme ceci:

find ${PWD} -name "*.txt"| cb

Nice, n'est-ce pas?


90
2017-11-01 08:29



Bien, mais ne fonctionne que pour le texte et ce n'est pas vraiment le fichier, juste le texte. Supposons que vous avez un fichier jpg? - Strapakowsky
Oui, je savais que si vous copiez un fichier depuis le gestionnaire de fichiers si vous le collez dans un autre dossier, vous collez le fichier, mais si vous collez un éditeur de texte, vous obtenez le chemin du fichier. - Strapakowsky
Dans le cas de fichiers binaires (jpg, etc.), tout est beaucoup plus compliqué. Ici j'ai posé une question inspirée par la vôtre - unix.stackexchange.com/questions/53503/…- avoir une lecture sur "les atomes cibles" et d'autres choses - Sergey
J'ai entendu que xclip prend également en charge la copie de fichiers avec xclip-copyfile et xclip-pastefile. Je ne l'ai pas vraiment utilisé, mais cela pourrait être une solution. - Gladen
Wow, @Gladen, je pense que vous devez l'afficher comme une réponse séparée. Bien que ça marche quand on utilise xclip-copyfile et alors xclip-pastefile, mais ne semble pas fonctionner avec le gestionnaire de fichiers Ubuntu ... - Sergey


J'ai entendu que xclip prend également en charge la copie de fichiers avec xclip-copyfile et xclip-pastefile. Je ne l'ai pas vraiment utilisé, mais cela pourrait être une solution.


8
2017-11-01 10:03



Cela ne fait que copier les noms de fichiers, pas le contenu des fichiers. Il suffit de regarder les exemples de page de manuel, c'est-à-dire $ man xclip-copyfile - Craig