

Terminal de Mac OS X (5)
Le terminal de Mac OS X : Cinquième Épisode
Bonjour à tous, merci pour vos multiples encouragements. Je rappelle à tous que les épisodes précédents sont facilement accessibles dans la section "Tutoriaux" de LogicielMac. Cette semaine, comme promis, vous aurez la réponse au petit exercice.
Alors pourquoi je vous ai dit de faire cet exercice ? Bah? Tout simplement car la semaine dernière je n'avais rien pour pouvoir le faire moi-même . Bon qu'à cela ne tienne ! Cette semaine je vais vous indiquer comment faire? Mais en développant un peu le programme.
perm
Étant donné que l'exercice que je vous ai donné est un peu simple, le petit script que je vais vous donner va transformer un fichier quelconque en commande permanente.
Il existe sur votre disque dur des dossiers invisibles et insoupçonnés pour les profanes. Je ne vais pas tous les citer, je vais seulement citer ceux qui nous intéressent et leurs apparentés :
- /bin : ce dossier contient les commandes principales.
- /sbin : celui-ci contient les commandes d'administration essentielles
- /usr/bin : celui-ci contient les commandes utilisateurs
- /usr/sbin : et enfin, celui-ci contient les commandes d'administration non-essentielles.
Le dossier qui nous intéresse en l'occurrence "/usr/bin/", on ne va pas utiliser les dossiers d'administrations ou le dossier principales pour nos humbles commandes !
Si vous explorez le dossier en question dans le Finder : Menu Aller --> Aller au dossier? (Raccourcis : commande + majuscule + G), vous y trouverez une soixantaine de fichiers exécutables (icône rectangulaire noire avec "exec" écrit en vert dedans). Si vous ouvrez l'un des fichiers dans votre éditeur de texte, vous n'y comprendrez pas grand-chose. C'est parce qu'il s'agit d'un binaire, c'est-à-dire d'un programme en C et compilé. Nous n'irons pas jusque-là, la programmation système n'est pas du niveau de ce tutoriel? C'est bien trop complexe.
Ce dossier, "/usr/bin/", sera donc le dossier qui contiendra nos nouvelles commandes permanentes.
Je vais maintenant parler de la commande "perm". Elle n'existe pas, à priori, vous allez donc devoir la créer vous-même et l'installer. Elle a pour principe de transformer un fichier quelconque, passé en paramètre, en fichier exécutable et de placer le fichier en question dans le dossier "/usr/bin/".
Écriture du fichier
Entrez dans votre éditeur de texte préféré et tapez le texte suivant :
chmod +x $1
sudo mv $1 /usr/bin/`basename $1`
Les caractères entourant "basename $1" ne sont pas des guillemets, mais des accents graves. Lorsque vous mettez une commande (en l'occurrence basename $1) entre ces symboles, vous exécutez en fait cette commande, et ce qui est censé être affiché par la commande est placé à la place de l'ensemble "`basename $1`".
Expliquons le script :
- La première ligne récupère d'abord le paramètre envoyé à la commande grâce à "$1", en l'occurrence, si vous mettez d'autres paramètres ils ne seront pas pris en compte. Et ensuite, rend ce fichier exécutable pour tous, en effet "+x" est équivalent à "a+x".
- La deuxième ligne, exécuté, grâce à sudo, avec les autorisations de l'administrateur, place le fichier passé en paramètre dans le dossier "/usr/bin/". La commande "mv", expliquée dans le deuxième épisode, renomme le fichier par exemple "~/psycho" en "/usr/bin/psycho". Ainsi, sans que votre fichier-commande change de nom, il devient exécutable de façon permanente.
Après l'exécution de ce petit script avec le fichier que vous voulez, vous aurez créer une toute nouvelle commande rien qu'à vous !
Encore faut-il qu'il soit exécutable.
Alors, ce qu'il vous reste à faire c'est :
Si votre fichier se trouve dans le dossier de départ et qu'il se nomme bien "perm", tapez la commande suivante :
chmod +x ~/perm
Et puisque cette commande est elle aussi supposée être permanente, et qu'on a un script tout prêt pour le faire, autant l'utiliser.
C'est un peu paradoxal, mais la commande qui sert à rendre permanent un script va se rendre lui-même permanent, voilà donc la commande à exécuter :
~/perm ~/perm
Un fois exécuter, le terminal vous demandera le mot de passe d'un administrateur pour pouvoir exécuter la commande "mv", puis le fichier "perm" disparaîtra du dossier de départ pour apparaître dans le dossier "/usr/bin/".
Voilà, c'est fait ! "perm" est maintenant une commande permanente, vous pourrez l'utiliser comme une commande normale avec sa propre syntaxe :
perm fichier
Voilà, c'est tout pour cette semaine, amusez vous bien à créer vos propres commandes permanentes afin de vous simplifier la vie.
Comme d'habitude si vous avez des questions, des suggestions ou des commentaires, vous avez les voies traditionnelles.
Psycho
tient j'avais ublier de lire le 5eme épisode. petit truc pour les codeurs, simple et efficace pour les comparaisons de fichiers: diff -w [i]chemin_dossier1 chemin_dossier2[/i]