Linux : Surligner les occurrences d’un mot sur la sortie standard
Il peut être pratique de voir les occurrences d’une mot après avoir fait un cat sur un ou plusieurs fichiers sans pour autant masquer le reste (le cas de grep). Je partage avec vous un script qui permet de surligner ces occurrences :
Utilisation:
cat fichier | highlight « occurence »
Code :
#! /bin/bash perl -p -e 's/'$1'/\e[31m'$1'\e[0m/' |
A vous de l’utiliser, pour faciliter la tâche de ceux qui débutent, voici comment le rendre accessible via une simple commande « highlight » de votre shell :
1. Créez le fichier /bin/highlight et coller le script ci-dessus dans ce fichier
2. Donnez les droits d’exécution aux utilisateurs : chmod a+x /bin/highlight
3. Exécutez la commande highlight et les paramètres qui vont bien 🙂
j’ai opté personnellement pour un code permettant de rechercher également les caractères /
mon script :
#! /bin/bash
rm -f /tmp/highlight.tmp
echo « $1 » > /tmp/highlight.tmp
sed -i ‘s/#/\\\#/’ /tmp/highlight.tmp
TEXT=`cat /tmp/highlight.tmp`;
perl -p -e ‘s#’$TEXT’#\e[31m’$TEXT’\e[0m#’
rm /tmp/highlight.tmp
Ma recherche s’arrêtait a la première occurrence, la bonne est :
#! /bin/bash
rm -f /tmp/highlight.tmp
echo « $1″ > /tmp/highlight.tmp
sed -i ‘s/#/\\\#/’ /tmp/highlight.tmp
TEXT=`cat /tmp/highlight.tmp`;
perl -p -e ‘s#’$TEXT’#\e[31m’$TEXT’\e[0m#g’
rm /tmp/highlight.tmp