jeudi 29 janvier 2015

Github, script de remplacement de chaines de caractères

`sed` et `awk` sont très bien pour remplacer des chaines par d'autres.

Toutefois, le fait que ce soit des regexp qu'ils attendent complique l'utilisation lorsque la chaine fixe recherchée contient des caractères pouvant être interprétés comme des "opérateurs" de rexexp (`?` par exemple)

`sandr` est un outil qui permet de faire des recherches de chaines fixes ou non. Des options permettent d'extraire les chaines matchées/remplacées dans un fichier et d'appliquer des remplacements de masse (via une table de hachage).

D'autres options bien utiles sont disponibles mais je vous laisse les découvrir sur le projet github sandr.

Bonne découverte !

Github, script de connexion centralisé

Sur mon github (ici), j'ai mis à disposition un script de connexion centralisé.

Celui-ci est bien utile pour avoir tout sous la main (ssh, mysql direct ou via tunnel ssh, etc.)

Le script est extensible facilement.

La recherche de la "ressource" se fait par mot clé via un mini-moteur de recherche.

Des exemples d'utilisation se trouvent dans le README.

vendredi 16 janvier 2015

Bash, ajout d'un répertoire au PATH

Pour tester et ajouter un répertoire au PATH, on peut faire comme ceci dans son ~/.bashrc



L'utilisation d'un test avec regexp permet de garder une variable avec un contenu "propre".

mercredi 14 janvier 2015

Bash, comment faire pour exécuter du code en fonction de la présence de fichier*s*

Bash met à disposition des opérateurs pour tester l'existence de fichiers, leur type, droits d'accès...

Toutefois, dans certains cas, on peut souhaiter tester la présence de fichiers et appliquer un traitement si l'un d'entre eux existe.

On peut utiliser la commande ls couplée à if comme le montre l'exemple ci-dessous

mercredi 7 janvier 2015

bash, créer dynamiquement une liste de paramètres pour appeler une commande

Voici comment créer dynamiquement une liste de paramètres et l'utiliser dans des appels de commande.
Le cas des espaces dans les options est bien géré.

Dans le cas présent, cela sert à afficher une boite de dialogue (utilitaire whiptail livré d'office sous debian) pour que l'utilisateur puisse choisir les actions à effectuer



Pour des radioboutons, remplacer --selectbox par --radiobox