Je sélectionne du texte et le copie en utilisant Ctrl + c. Maintenant, le texte est dans le presse-papiers du système. Je peux coller ce code en utilisant Ctrl + v dans un fichier et exécutez wc
pour que le fichier vérifie le nombre de caractères, de lignes et de mots.
Mais si je veux compter les caractères du texte dans le presse-papiers sans l'enregistrer dans un fichier, y a-t-il une solution?
Vous devrez en quelque sorte libérer le contenu du presse-papiers. Éviter les fichiers peut être fait via un pipeline . Pour cela, il existe l'utilitaire xclip
. Il n'est pas installé par défaut, donc à moins qu'un autre programme ne l'ait installé en tant que dépendance, vous voudrez peut-être l'exécuter
Sudo apt-get install xclip
Une fois que vous l'avez installé, vous pouvez le faire
xclip -o sel clip | wc
Notez qu'il existe plus d'un presse-papiers aka sélection sous Linux, d'où la raison pour laquelle l'utilisation de -o sel clip
drapeaux. Bien sûr, avec l'utilisation d'un pipeline, cela évite l'utilisation de fichiers intermédiaires comme demandé dans la question.
Un autre avantage secondaire de cet utilitaire est que vous pouvez utiliser cet utilitaire non seulement dans un terminal GUI, mais dans n'importe quelle console tty virtuelle en ajoutant DISPLAY=:0
au début de la commande (ou de l'autre affichage approprié, si votre serveur X Window aka GUI est configuré pour plusieurs écrans). Voir le post ici sur ce même sujet. Ainsi, vous évitez d'utiliser des raccourcis clavier pour libérer le contenu du presse-papiers et vous pouvez écrire des scripts qui utilisent le presse-papiers d'une manière plus puissante.
Il existe également un autre utilitaire appelé xsel
qui fonctionne de manière similaire. Vous pouvez en lire plus dans un article connexe .
Une solution consiste à "faire écho" le contenu du presse-papiers et à passer le contenu à wc
:
$ echo -n "your text" | wc
0 2 9
0 nouvelle ligne, 2 mots et 9 caractères.
Comme votre texte est dans votre presse-papiers, vous pouvez facilement coller le contenu dans le terminal en utilisant Ctrl+Shift+v.