Comment copier le contenu d'un fichier sous UNIX sans afficher le contenu du fichier. Je ne veux pas chat ou vi pour voir le contenu.
Je veux les copier dans le presse-papiers pour pouvoir les coller à nouveau dans le bloc-notes Windows.
Je ne peux pas copier le fichier de ce serveur sur un autre en raison de restrictions d'accès.
Réponses:
X11
Si vous utilisez X11 (l'interface graphique la plus courante sur les systèmes Unix ou Linux traditionnels), pour copier le contenu d'un fichier dans la sélection CLIPBOARD X11 sans l' afficher , vous pouvez utiliser l' utilitaire
xclip
ouxsel
.Ou:
Pour stocker le contenu de
file
sous la sélection CLIPBOARD X11.Notez qu'il doit être stocké en utilisant un codage UTF-8 ou le collage ne fonctionnera pas correctement. Si le
file
est encodé en utilisant un autre jeu de caractères, vous devez d'abord convertir en UTF-8, comme ceci:Pour un fichier encodé en latin1 / iso8859-1 .
Pour le stocker en tant que CUT_BUFFER (celles-ci sont toujours interrogées par certaines applications, comme par exemple
xterm
lorsque rien ne revendique les sélections CLIPBOARD ou PRIMARY X et qu'il n'est pas nécessaire qu'un processus soit exécuté pour le servir), bien que vous ne souhaitiez probablement pas ou besoin d'utiliser que de nos jours:(supprime les caractères de fin de ligne de fin
file
).Écran GNU
GNU
screen
a lareadbuf
commande d'insuffler le contenu d'un fichier dans son propre tampon de copier-coller (avec lequel vous collez^A]
). Alors:Apple OS / X
Bien que Apple OS / X puisse utiliser X11. Ce n'est pas le cas par défaut, sauf si vous exécutez une application X11. Vous pourriez utiliser
xclip
ouxsel
là - bas, car OS / X devrait synchroniser la sélection X11 CLIPBOARD avec les tampons de la carte de montage pour OS / X, mais ce serait un gaspillage de démarrer le serveur X11 rien que pour cela.Sous OS / X, vous pouvez utiliser la
pbcopy
commande pour stocker le contenu arbitraire dans cartonnés tampons:(le codage de caractères du fichier est censé être celui de la locale).
Coquilles
La plupart des shells ont leurs propres tampons copier-coller. En mode emacs, les opérations de couper et copier stockent le texte copié / coupé sur une pile avec laquelle vous collez et collez Ctrl-Y, puis parcourez-le avecAlt+Y
zsh CUTBUFFER / killring
Dans
zsh
, la pile est stockée dans le$killring
tableau et le haut de la pile dans la$CUTBUFFER
variable bien que ces variables ne soient disponibles que depuis les widgets Zsh Line Editor (zle) et que quelques widgets spécialisés constituent le moyen préféré pour les manipuler.Comme ceux-ci ne sont disponibles que via le ZLE, le faire avec des commandes est un peu compliqué:
Le
zle-line-init
widget spécial est exécuté une fois au début de chaque nouvelle invite de commande. Cela signifie que le fichier ne sera copié qu'à la prochaine invite. Par exemple, si vous le faites:Le fichier ne sera copié qu’après ces 2 secondes.
la source
Error: Can't open display: (null)
xclip
etxsel
sont des utilitaires X11, ils manipulent les sélections X11, ils ne peuvent donc être utilisés que dans un environnement X11 où$DISPLAY
est défini.Peut-être que vous vouliez demander ceci . Mais tout fichier que vous souhaitez lire doit être ouvert par un appel système. Si vous n'avez pas accès à un fichier, vous ne pouvez pas le lire. C'est l'idée d'un accès restreint.
la source
Utiliser X11:
Si vous pouvez lire le fichier, le problème d'accès concerne le serveur de destination.
la source