# Petits exercices
## num
Écrivez le script `num` acceptant une liste d'arguments et qui n'affiche que ceux qui sont numériques et les affiche dans l'ordre inverse.
## alpha
Écrivez le script `alpha` lisant son entrée standard et
- n'affichant que les lignes paires
- qui en plus contiennent un nombre d'au moins deux chiffres
- en les passant en majuscules (via la commande `tr a-z A-Z`)
- en les faisant précéder de leur numéro (d'origine)
## Classement de photos
Les vacances sont finies \! et j'ai plein de photos dans mon répertoire *images*.
J'aimerais que vous m'écriviez un script qui les classe automatiquement en fonction de leur date de dernière modification dansdes répertoires de noms `AAAA-MM-JJ` (année-mois-jour: exemple : 2010-10-29).
Le répertoire devra être créé si nécessaire avant que la photo soit déplacée à l'intérieur.
Algorithme :
* __debut__
* __pour__ tous les **fichiers** F du répertoire passé en argument __faire__
* DIR ← date sous la forme *AAAA-MM-JJ* du fichier F
* __si__ le répertoire de DIR n'existe pas __alors__
* créer le répertoire DIR
* __fin si__
* déplacer F dans DIR
* __fin pour__
* __fin__
- Écrivez le script shell associé.
Indications :
* la commande `ls -l --time-style +%Y-%m-%d ` permet de lister les fichiers avec leur date sous la forme `AAAA-MM-DD`.
* Pour tester avec des photos fictives, vous pouvez utiliser la commande `touch -m -t 200910130000 img-0001.jpg`. Cette commande crée un fichier vide dont la date de dernière modification est fixée au jour du 13 octobre(10) 2009.
## Un petit jeu d'adresse
Ce petit jeu d'adresse consiste à présenter à l'utilisateur, pendant un
temps limité (1.5 secondes), une fenêtre `xeyes` placée aléatoirement à
l'écran. Si l'utilisateur réussi à "tuer" la fenêtre en la fermant à
l'aide de la croix avant le temps imparti il gagne 1 point. Sinon c'est
le programme qui "tue" la fenêtre avant de présenter la suivante. Une
partie se joue en 10 coups.
Écrivez le script shell associé à ce jeu.
Indications :
* Une fenêtre peut généralement être placée à une position donnée de l'écran via l'option -geometry. Par exemple la commande `xeyes -geometry +500+300` lancera `xeyes` qui placera sa fenêtre à la position (500,300). Remarque : certains gestionnaires de fenêtres, comme `Gnome 3` ou `i3` par exemple, ne tiennent pas toujours compte du placement demandé !
* La commande `sleep` est l'une des rares commandes standard acceptant en argument un nombre flottant exprimant le temps en seconde. Ainsi sleep 0.2 fera dormir le processus 200 millisecondes.
* La commande `shuf -i 0-100 -n 1` permet d'obtenir un entier aléatoire dans l'intervalle [0-100].
- Modifiez votre programme pour qu'il réponde au synopsis suivant :
`prog [-n num] [-t delai]`
où
* `num` est le nombre de coups de la partie (10 par défaut).
* `delai` est le temps imparti pour tuer la fenêtre.