linux:scripts_bash:vrac
                Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| linux:scripts_bash:vrac [10/08/2007 17:49] – amélioration orphelines daniel | linux:scripts_bash:vrac [22/07/2010 17:29] (Version actuelle) – daniel | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| ====== Bout de scripts en vrac ====== | ====== Bout de scripts en vrac ====== | ||
| + | |||
| + | |||
| + | ===== dates ===== | ||
| + | * date => timestamp : '' | ||
| + | * timestamp => date : '' | ||
| + | |||
| + | |||
| + | ===== lister fichiers avec md5, taille, etc ===== | ||
| + | Pour faire un csv avec dossier; | ||
| + | <code bash> | ||
| + | rep=dossier_dans_lequel_chercher | ||
| + | csv=liste_fichiers.csv; | ||
| + | echo '" | ||
| + | find " | ||
| + | do | ||
| + | fich=" | ||
| + | rep=" | ||
| + | md5=$(md5sum " | ||
| + | echo -n " | ||
| + | ls -l " | ||
| + | done; | ||
| + | </ | ||
| + | |||
| ===== parsing de logs ===== | ===== parsing de logs ===== | ||
| Ligne 37: | Ligne 60: | ||
| La syntaxe id3ed est en effet ('' | La syntaxe id3ed est en effet ('' | ||
| id3ed [-s songname] [-n artist] [-a album] [-y year] [-c comment] [-k tracknum] [-g genre] fichier | id3ed [-s songname] [-n artist] [-a album] [-y year] [-c comment] [-k tracknum] [-g genre] fichier | ||
| + | |||
| Ligne 53: | Ligne 77: | ||
| # ensuite, si tout est OK, on peut effacer img.bak et tmp | # ensuite, si tout est OK, on peut effacer img.bak et tmp | ||
| </ | </ | ||
| + | |||
| + | |||
| + | ===== Colorer la sortie d'un script ===== | ||
| + | Pour afficher [OK] en vert et [KO] en rouge en fonction du bon déroulement d'une commande (cf une [[ http:// | ||
| + | < | ||
| + | OK='[ \e[0; | ||
| + | KO='[ \e[0; | ||
| + | commande && echo -e $OK || echo -e $KO | ||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ===== Récupérer les journaux de france culture ===== | ||
| + | D' | ||
| + | <code bash> | ||
| + | [ $# -ne 1 ] && echo "Il faut passer un argument (7, | ||
| + | |||
| + | urls=([7]=http:// | ||
| + | url='' | ||
| + | for i in ${!urls[*]} | ||
| + | do | ||
| + | [ $1 -eq $i ] && url=${urls[i]} && h=$i | ||
| + | done | ||
| + | [ -z " | ||
| + | |||
| + | wget $url -O fc${h}.xml | ||
| + | mp3=$(sed -nre ' | ||
| + | { | ||
| + | :boucle | ||
| + | N | ||
| + | $! b boucle | ||
| + | } | ||
| + | s# | ||
| + | |||
| + | echo -e "\nOn va essayer de récupérer \e[0; | ||
| + | wget " | ||
| + | </ | ||
| + | |||
| + | Et avec zenity (à peaufiner...) | ||
| + | <code bash> | ||
| + | #!/bin/bash | ||
| + | |||
| + | # les urls des rss, à modifier si ça devait changer... | ||
| + | urls=([7]=http:// | ||
| + | |||
| + | # qq tests | ||
| + | which zenity >/ | ||
| + | # Attention avec $?, 0 => OK, on change | ||
| + | [ $? -eq 0 ] && zenok=TRUE || zenok=FALSE | ||
| + | |||
| + | which notify-send >/ | ||
| + | [ $? -eq 0 ] && notifok=TRUE || notifok=FALSE | ||
| + | # faudrait plutôt se baser sur le test [ -z " | ||
| + | |||
| + | |||
| + | # les fonctions | ||
| + | |||
| + | get_heure() { | ||
| + | if [ $# -eq 0 ] && [ " | ||
| + | then | ||
| + | ret=$(zenity --title=' | ||
| + | --column='' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | ' | ||
| + | [ -z " | ||
| + | case " | ||
| + | 7h) h=7;; | ||
| + | 12h30) h=12;; | ||
| + | 18h) | ||
| + | 22h) | ||
| + | *) set_msg "Heure $ret inconnue" | ||
| + | esac | ||
| + | else | ||
| + | [ $# -ne 1 ] && echo "Il faut passer un argument (7, | ||
| + | h=$1 | ||
| + | fi | ||
| + | return $h | ||
| + | } | ||
| + | |||
| + | set_msg() { | ||
| + | [ $notifok = " | ||
| + | } | ||
| + | |||
| + | check_heure() { | ||
| + | url='' | ||
| + | for i in ${!urls[*]} | ||
| + | do | ||
| + | [ $1 -eq $i ] && url=${urls[i]} && h=$i | ||
| + | done | ||
| + | [ -z " | ||
| + | } | ||
| + | |||
| + | ask2continue() { | ||
| + | if [ $zenok = TRUE ] | ||
| + | then | ||
| + |  | ||
| + | [ $? != " | ||
| + | else | ||
| + | echo $1 | ||
| + | echo " | ||
| + | read rep | ||
| + | [ " | ||
| + | fi | ||
| + | } | ||
| + | |||
| + | get_url() { | ||
| + | xml="/ | ||
| + | wget $url -O " | ||
| + | mp3=$(sed -nre ' | ||
| + | { | ||
| + | :boucle | ||
| + | N | ||
| + | $! b boucle | ||
| + | } | ||
| + | s# | ||
| + | |||
| + | jour=$(date ' | ||
| + | [ " | ||
| + | |||
| + | # si abandon on est déjà sorti | ||
| + | fich=/ | ||
| + | wget " | ||
| + | if [ $? ] | ||
| + | then | ||
| + | rm -f fc${h}.xml | ||
| + | set_msg "On a récupéré un mp3 ($fich)" | ||
| + | xdg-open $fich | ||
| + | # rm -f $fich # xdg rend la main tout de suite | ||
| + | fi | ||
| + | } | ||
| + | |||
| + | # et le main | ||
| + | get_heure $* | ||
| + | h=$? | ||
| + | check_heure $h | ||
| + | get_url $url | ||
| + | </ | ||
| + | |||
linux/scripts_bash/vrac.1186760945.txt.gz · Dernière modification : 17/01/2008 16:11 (modification externe)
                
                