Pour un fichier :
Et encore mieux, sur la sortie d'une commande :)
J'entrepose ici mes découvertes linux, bash, python et java que je souhaite partager et mettre de côté...
mardi 16 octobre 2012
lundi 15 octobre 2012
awk, un exemple pour bien débuter et comprendre...
awk n'est pas si compliqué que ça lorsque l'on comprend la philosophie...
La commande se décompose de la manière suivante :
BEGIN { CODE_DEBUT } MATCHAGE { CODE } END { CODE_FIN }
- CODE_DEBUT est exécuté au début du traitement du fichier ou flux
- CODE_FIN est exécuté à la fin du traitement du fichier ou flux
- CODE est exécuté sur les lignes du fichier ou flux matchées par les règles de MATCHAGE
Dans l'exemple ci-dessus,
- -F ';' indique que le séparateur de champs est le ;
- les -v permettent de déclarer une variable awk à partir d'une variable bash (pour transmettre les informations)
- NR correspond au numéro de la ligne traitée (on ignore l'entête du fichier avec le test supérieur ou égal à 2)
- /;/ correspond aux lignes qui contiennent un ;
- !/^#/ correspond aux lignes qui ne débutent pas par un dièse
Le programme ci-dessus crée les requêtes à exécuter sur chacune des bases de données pour chacun des enregistrements du fichier file.txt
Comme quoi, on peut démystifier awk ;)
awk, base, for
python, lire et écrire des fichiers xls
Si l'on a des fichiers Excel que l'on souhaite lire ou écrire, on peut utiliser les paquets xlrd (reader) et xlwt (writer).
Voici un petit exemple de ce que l'on peut faire :
La page suivante propose des exemples clairs et rapides pour bien commencer :
http://www.dev-explorer.com/articles/excel-spreadsheets-and-python
Voici un petit exemple de ce que l'on peut faire :
La page suivante propose des exemples clairs et rapides pour bien commencer :
http://www.dev-explorer.com/articles/excel-spreadsheets-and-python
vendredi 12 octobre 2012
bash, savoir si stdout fait référence à un terminal
Pour savoir si la sortie standard pointe sur un terminal, on peut utiliser l'opérateur "-t" en bash.
Dans le cas présenté, on utilisera colordiff pour le rendu sinon diff.
En effet, un pipe avec less (sans l'option -R ou la variable LESS définie à -R) afficherait les caractères d’échappement servant à la colorisation des lignes
Cf une page intéressante : ici
Dans le cas présenté, on utilisera colordiff pour le rendu sinon diff.
En effet, un pipe avec less (sans l'option -R ou la variable LESS définie à -R) afficherait les caractères d’échappement servant à la colorisation des lignes
Cf une page intéressante : ici
sql, gérer les conflits lors des inserts
Lors d'un insert, si la clé primaire existe déjà, il est possible de faire un traitement comme dans l'exemple ci-dessous.
Ici, on tente de peupler la table enveloppesTTS avec des valeurs.
Si l'entrée n'existe pas, on la crée.
Sinon on met à jour un champ de cette table uniquement si sa valeur n'est pas déjà renseigné.
Ici, on tente de peupler la table enveloppesTTS avec des valeurs.
Si l'entrée n'existe pas, on la crée.
Sinon on met à jour un champ de cette table uniquement si sa valeur n'est pas déjà renseigné.
mysql, on duplicate key, insert into, values, select, if, tts
Inscription à :
Articles (Atom)