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 [18/11/2006 10:28] – (ancienne révision restaurée) 127.0.0.1 | 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 13: | Ligne 36: | ||
done;\ | done;\ | ||
done; | done; | ||
+ | |||
+ | |||
===== tags mp3 ===== | ===== tags mp3 ===== | ||
Ligne 32: | Ligne 57: | ||
Ensuite, il reste à ouvrir le csv avec votre tableur (oocalc par exemple), modifier ce que vous voulez, ajouter dans une dernière colonne une formule du genre | Ensuite, il reste à ouvrir le csv avec votre tableur (oocalc par exemple), modifier ce que vous voulez, ajouter dans une dernière colonne une formule du genre | ||
- | =" | + | =" |
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 | ||
+ | |||
+ | |||
+ | |||
+ | ===== Effacer des images orphelines ===== | ||
+ | <code bash> | ||
+ | # dans un rep d' | ||
+ | # backup ! | ||
+ | cp -a . ../img.bak | ||
+ | mkdir ../tmp | ||
+ | # les fichiers dans lesquels il faut fouiller | ||
+ | fichiers=" | ||
+ | # on fouille | ||
+ | for img in *; do echo $img; > | ||
+ | # et on efface ce qui n'a renvoyé que des 0 | ||
+ | for f in ../ | ||
+ | # 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.1163842092.txt.gz · Dernière modification : 03/12/2006 15:50 (modification externe)