Je souhaite rechercher et couper du texte à partir de la sortie d'une commande dans un terminal afin de pouvoir l'utiliser dans des appels ultérieurs en ligne de commande ou tout simplement dans une session d'édition.
Est-il possible d'exécuter facilement une expression régulière contre la sortie d'un terminal et de couper les résultats sans toucher la souris?
Mes exigences sont:
screen (1) vous permet de copier/coller à l'aide du clavier, mais vous devez exécuter votre processus/processus Shell à l'intérieur de screen
.
Pour copier, appuyez sur Ctrl+A[, déplacez le curseur (à l'aide des touches fléchées) vers le point de départ et appuyez sur ⏎ (RETOUR), déplacez le curseur jusqu'au point final et appuyez sur ⏎. Le texte marqué est maintenant copié.
Pour coller, appuyez sur Ctrl+A]
Cette solution s’applique également à Byobu, car Byobu n’est qu’un écran enveloppant.
Installez l'utilitaire xclip
(Sudo apt-get install xclip
)
xclip
est configuré pour copier les entrées redirigées vers le presse-papiers.xclip -o
"collera" le contenu du presse-papiers dans votre terminal (sortie standard)Pour les expressions régulières, il suffit de diriger la commande vers grep; le commutateur -P
vous donnera toutes les fonctionnalités de regex Perl.
Exemple: ls -lR | grep -P "anc.*" | xclip
pour copier dans le presse-papier
tee xclip
à la place pour qu'il soit affiché ET copié.