bash, appel callback à la sortie...

2012-06-22 | #bash #commande #trap

Il est possible en bash d’appeler des méthodes lorsque de la fin du script est atteinte et ce même s’il y a une erreur. Ci-dessous, le script appellera cleanup_err puis cleanup_ok lorsque false sera atteint. #!/bin/bash set -e function cleanup_err { echo cleanup_err } function cleanup_ok { echo cleanup_ok } trap cleanup_ok EXIT trap cleanup_err ERR false C’est bien pratique pour nettoyer les fichiers et répertoires temporaires :)

Continuer la lecture 


emacs, afficher le nom de fichier complet dans la modeline

2012-06-15 | #emacs

; show the full path and filename in the message area (defun path () (interactive "*") (message "%s" buffer-file-name) ) ; set filename only in the Modeline display (defun short-file-name () "Display the full file path and name in the modeline" (interactive "*") (setq-default mode-line-buffer-identification '("%12b")) ) ; set the full path and filename only in the Modeline display (defun long-file-name () "Display the full file path and name in the modeline" (interactive "*") (setq-default mode-line-buffer-identification '("%S:"(buffer-file-name "%f"))) ) (long-file-name)

Continuer la lecture 


bash, sommer une colonne....

2012-05-24 | #awk #bash #bc #commande #paste #sed #tr

Comment sommer des valeurs provenant d’un fichier ou de la sortie standard. Voici plusieurs solutions… A la awk : printf "1\n2\n3\n" | awk '{s+=$1} END {print s}' A la tr : printf "1\n2\n3\n"| tr '\n' '+' | sed -e 's/+$/\n/' | bc A la paste : printf "1\n2\n3\n" | paste -sd+ | bc Moi je choisis la troisième solution. Elle est plus courte, simple et efficace !!

Continuer la lecture 


bash, presse-papier

2012-05-24 | #bash #commande #presse papier #xclip

Il est possible de copier un fichier ou la sortie standard dans le presse papier… Il suffit d’utiliser la commande xsel. Exemple : $ cat /etc/fstab | xsel -b La commande xclip un peu similaire permet la même chose… $ sudo apt-get install xclip# Downloads and installs xclip $ xclip -sel clip < ~/.ssh/id_rsa.pub

Continuer la lecture 


svn, revert d'un commit

2012-05-15 | #revert #svn

Un mauvais commit sur un fichier ? Pas de problème, il peut être inversé :) svn merge -c -[bad_revision] [repository_url] Attention au - devant la mauvaise révision… Ne restera plus qu’à commiter l’inversion

Continuer la lecture 


mysqlimport

2012-05-04 | #mysqlimport

Le fichier doit porter le nom de la table à l’extension près. Ici les options utilisées sont : --delete pour vider la table avant l’import --fields-terminated-by pour le séparateur entre les champs --lines-terminated-by pour le caractère de fin de ligne (ici DOS/WINDOWS) mysqlimport --fields-terminated-by=\; --lines-terminated-by="\\r\\n" -v --delete -utest -ptest -hlocalhost BASE TABLE.csv

Continuer la lecture 