Table des matières
CHAPITRE 1
N°1 ­ Trouver des programmes dans le PATH . . . . . . . . . . . . . . . . . . .
N°2 ­ Valider les entrées : caractères alphanumériques uniquement .
N°3 ­ Normaliser les formats de date . . . . . . . . . . . . . . . . . . . . . . . . . .
N°4 ­ Soigner la présentation des grands nombres . . . . . . . . . . . . . . .
N°5 ­ Valider des entiers en entrée . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°6 ­ Valider des flottants en entrée . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°7 ­ Valider les formats de date . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°8 ­ Contourner les implémentations limitées d'echo . . . . . . . . . . . .
N°9 ­ Calculatrice de précision arbitraire à virgule flottante . . . . . . .
N°10 ­ Verrouiller les fichiers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°11 ­ Séquences de couleurs ANSI. . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°12 ­ Construire une bibliothèque de scripts shell . . . . . . . . . . . . . . .
N°13 ­ Déboguer des scripts shell. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CHAPITRE 2
Améliorer les commandes utilisateur . . . . . . . . . . . . . . . . . . . . . .
N°14 ­ Formater les lignes longues . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°15 ­ Archiver les fichiers détruits . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°16 ­ Exploiter l'archive des fichiers détruits. . . . . . . . . . . . . . . . . . .
N°17 ­ Consigner les destructions de fichiers . . . . . . . . . . . . . . . . . . . .
N°18 ­ Afficher le contenu des répertoires . . . . . . . . . . . . . . . . . . . . . .
N°19 ­ Rechercher les fichiers par nom. . . . . . . . . . . . . . . . . . . . . . . . .

100 scripts shell Unix
VI
N°20 ­ Émuler un autre environnement : DIR . . . . . . . . . . . . . . . . . . .
N°21 ­ Explorer la base de données des pages de manuel . . . . . . . . . .
N°22 ­ Afficher l'heure par fuseau horaire . . . . . . . . . . . . . . . . . . . . . .
CHAPITRE 3
Créer des utilitaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°23 ­ Utilitaire de pense-bête . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°23 ­ a renseigner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°24 ­ Une calculatrice interactive . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°25 ­ Vérifier l'orthographe de certains mots . . . . . . . . . . . . . . . . . .
N°26 ­ Vérifier l'orthographe interactivement avec shpell . . . . . . . . .
N°27 ­ Ajouter un dictionnaire local à spell . . . . . . . . . . . . . . . . . . . . .
N°28 ­ Convertir les températures . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°29 ­ Calculer les remboursements d'un prêt . . . . . . . . . . . . . . . . . .
N°30 ­ Implémenter un agenda . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°30.1 ­ A renseigner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CHAPITRE 4
Enrichir UNIX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°31 ­ Afficher un fichier avec les numéros de ligne . . . . . . . . . . . . . .
N°32 ­ Afficher un fichier avec des informations complémentaires . .
N°33 ­ Césure des lignes longues uniquement . . . . . . . . . . . . . . . . . . .
N°34 ­ Émuler les options de type GNU pour les quotas . . . . . . . . . . .
N°35 ­ Renforcer les similitudes entre sftp et ftp . . . . . . . . . . . . . . . . .
N°36 ­ Compléter grep . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°37 ­ Travailler avec des fichiers compactés. . . . . . . . . . . . . . . . . . . .
N°38 ­ Garantir un compactage optimal des fichiers . . . . . . . . . . . . . .
CHAPITRE 5
Administration système : gérer les utilisateurs . . . . . . . . . . . . .
N°39 ­ Analyser l'utilisation du disque . . . . . . . . . . . . . . . . . . . . . . . . .
N°40 ­ Signaler les utilisations excessives du disque . . . . . . . . . . . . . .
N°41 ­ Déterminer l'espace disque disponible . . . . . . . . . . . . . . . . . . .
N°42 ­ Faciliter la lecture de la sortie df . . . . . . . . . . . . . . . . . . . . . . . .
N°43 ­ Implémenter un locate sécurisé . . . . . . . . . . . . . . . . . . . . . . . . .
N°43.1 ­ A renseigner . . . . . . . . . . . . . . . . . . . . . . . . .
N°44 ­ Ajouter des utilisateurs au système . . . . . . . . . . . . . . . . . . . . . .
N°45 ­ Suspendre un compte utilisateur . . . . . . . . . . . . . . . . . . . . . . . .

Table des matières
VII
N°46 ­ Supprimer un compte utilisateur . . . . . . . . . . . . . . . . . . . . . . . .
N°47 ­ Valider l'environnement utilisateur. . . . . . . . . . . . . . . . . . . . . .
N°48 ­ Nettoyer après le départ des invités . . . . . . . . . . . . . . . . . . . . . .
CHAPITRE 6
Administration système : assurer la maintenance . . . . . . . . . .
N°49 ­ Suivre les applications set UID. . . . . . . . . . . . . . . . . . . . . . . . . .
N°50 ­ Paramétrer la date et l'heure du système . . . . . . . . . . . . . . . . .
N°51 ­ Afficher les services activés . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°52 ­ Tuer les processus par nom . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°53 ­ Valider les entrées crontab des utilisateurs . . . . . . . . . . . . . . . .
N°54 ­ Garantir l'exécution des jobs cron du système . . . . . . . . . . . . .
N°55 ­ Faire tourner les fichiers journaux . . . . . . . . . . . . . . . . . . . . . .
N°56 ­ Gérer les sauvegardes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°57 ­ Sauvegarder des répertoires. . . . . . . . . . . . . . . . . . . . . . . . . . . .
CHAPITRE 7
Utilisateurs du Web et d'Internet . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°58 ­ Calculer le temps passé en ligne. . . . . . . . . . . . . . . . . . . . . . . . .
N°59 ­ Télécharger des fichiers via le FTP . . . . . . . . . . . . . . . . . . . . . .
N°60 ­ Suivre les informations de la BBC avec lynx . . . . . . . . . . . . . .
N°61 ­ Extraire les URL d'une page Web . . . . . . . . . . . . . . . . . . . . . . .
N°62 ­ Définir des mots en ligne. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°63 ­ Prévisions météorologiques . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°64 ­ Vérifier les dates de retour des livres à la bibliothèque . . . . . .
N°64.1 ­ A renseigner . . . . . .
N°65 ­ Extraire des informations filmographiques sur IMDb . . . . . .
N°66 ­ Convertir des devises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°66.1 ­ A renseigner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°67 ­ Gérer un portefeuille d'actions . . . . . . . . . . . . . . . . . . . . . . . . .
N°67.1 ­ A renseigner . . . . . . . . . . . . . . . . . . . . . . . . .
N°68 ­ Suivre les modifications de pages Web . . . . . . . . . . . . . . . . . . .
CHAPITRE 8
Astuces de webmaster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Exécuter les scripts de ce chapitre . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°69 ­ Visualiser l'environnement CGI . . . . . . . . . . . . . . . . . . . . . . . .
N°70 ­ Consigner les événements Web dans un journal. . . . . . . . . . . .

100 scripts shell Unix
VIII
N°71 - Construire des pages Web en un clin d’oeil . . . . . . . . . . . . . . . .
N°71.1 - A renseigner . . . . . . . . . . . . . . . .
N°72 ­ Traiter les formulaires de prise de contact . . . . . . . . . . . . . . . .
N°73 ­ Créer un album photo sur le Web . . . . . . . . . . . . . . . . . . . . . . .
N°74 ­ Créer un livre d'or . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°75 ­ Créer un compteur d'accès en mode texte . . . . . . . . . . . . . . . .
N°75.1 ­ A renseigner . . . . . . . . . . . . . . . .
N°76 ­ Afficher du texte aléatoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°76.1 ­ A renseigner . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
CHAPITRE 9
Administration du Web et d'Internet . . . . . . . . . . . . . . . . . . . . . . . .
N°77 ­ Identifier les liens internes cassés. . . . . . . . . . . . . . . . . . . . . . . .
N°78 ­ Signaler les liens externes cassés . . . . . . . . . . . . . . . . . . . . . . . .
N°79 ­ Vérifier l'orthographe des pages Web . . . . . . . . . . . . . . . . . . . .
N°80 ­ Gérer les mots de passe Apache . . . . . . . . . . . . . . . . . . . . . . . . .
N°81 ­ Synchroniser les répertoires avec FTP . . . . . . . . . . . . . . . . . . .
N°82 ­ Se synchroniser à un répertoire distant via FTP . . . . . . . . . . .
N°83 ­ Synchroniser les fichiers avec SFTP . . . . . . . . . . . . . . . . . . . . .
N°83.1 ­ A renseigner . . . . . . . . . . . . . . . . . . . . .
CHAPITRE 10
Administration d'un serveur sur Internet . . . . . . . . . . . . . . . . . . .
N°84 ­ Explorer le fichier access_log d'Apache . . . . . . . . . . . . . . . . . .
N°85 ­ Comprendre le fonctionnement des moteurs de recherche . . .
N°85.1 ­ A renseigner . . .
N°86 ­ Explorer le fichier error_log d'Apache . . . . . . . . . . . . . . . . . . .
N°87 ­ Éviter un désastre à l'aide d'une archive distante . . . . . . . . . .
N°87.1 ­ A renseigner . . . . . . . . . .
N°88 ­ Implémenter un site Web miroir . . . . . . . . . . . . . . . . . . . . . . . .
N°89 ­ Suivre l'utilisation de FTP . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°90 ­ Contrôler l'état du réseau. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°90.1 ­ A renseigner. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°91 ­ Changer la priorité des tâches par nom de processus . . . . . . .
N°91.1 ­ A renseigner . . . . . . .
N°92 ­ Ajouter de nouveaux comptes d'hôte virtuel . . . . . . . . . . . . . .
CHAPITRE 11
Scripts Mac OS X . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°93 ­ Lister les utilisateurs NetInfo . . . . . . . . . . . . . . . . . . . . . . . . . . .
N°94 ­ Ajouter un utilisateur à un système Mac OS X . . . . . . . . . . . .
N°95 ­ Ajouter un alias de courrier électronique . . . . . . . . . . . . . . . . .
N°96 ­ Définir dynamiquement le titre du Terminal . . . . . . . . . . . . . .

Table des matières
IX
N°97 ­ Créer des listes résumant la cédéthèque d'iTunes . . . . . . . . . .
N°98 ­ Compléter la commande open . . . . . . . . . . . . . . . . . . . . . . . . . .
CHAPITRE 12
Quand les scripts shell sont synonymes de jeu . . . . . . . . . . . .
N°99 ­ Anagrammes : un jeu de mots . . . . . . . . . . . . . . . . . . . . . . . . . .
N°100 ­ Deviner un mot avant qu'il ne soit trop tard : le pendu. . . . .
N°101 ­ Tester ses connaissances sur les capitales européennes . . . . .
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .