docs.jmini.fr

Les docs Jmini

Les docs jmini regroupent mes notes personnelles plus ou moins détaillées que je souhaite partager. Compilations de liens, tutoriels, réalisations pense-bêtes, morceaux de codes...
Autant d’informations que je retrouve sur mon site et qui pourront vous être utiles. En savoir plus...



Publié par Jérémie Bresson dans les docs Jmini (http://docs.jmini.fr) à l’adresse (http://docs.jmini.fr/notes/rendre-executable-terminal).


Dernière mise à jour : Lundi 20 octobre 2008

Rendre un fichier exécutable dans le terminal

Réponse rapide :
Pour rendre un fichier exécutable, il suffit de taper dans le terminal chmod +x chemin_vers_le_script

Pour la réponse longue et pour ceux qui maîtrisent mal le terminal, voici à l’aide d’un exemple, comment créer un script simple (en PHP) puis comment le rendre exécutable.
On pourra également lire cet article qui détaille la création d’un script AWK

Créer le script

ligne sha-bang

Un script n’est rien de plus qu’un fichier texte, écrit dans un des langages compatibles (sh, bash, perl, python, ruby, awk, php, …).

Le script doit commencer de cette manière :

  • par les symboles « #! » (appelé sha-bang).
  • puis par le chemin du programme chargé d’interpréter les commandes de ce script (un langage de script par exemple).
  • éventuellement des options reconnu par le programme.

Exemple pour un script PHP :

#!/usr/bin/php

Comment connaitre le chemin vers l’interpréteur de commande ?
On peut utiliser la commande du terminal which (par exemple, il suffit de taper « which php » dans le terminal, et de copier la réponse).

Alternative : le programme env

Au lieu du chemin vers l’interpréteur de commande, on peut indiquer le chemin vers le programme env suivit d’un espace puis du nom du langage.
Ce programme ira chercher le chemin lui même.

#!/usr/bin/env php

Avantage : si l’interpréteur n’est pas au même endroit en fonction de la machine, le même script pourra marcher partout.
Inconvénient : si plusieurs interpréteurs sont disponible sur une machine, on ne maîtrise plus lequel est choisi.

Un exemple

L’édition d’un tel fichier texte peut se faire avec n’importe quel éditeur de texte. (en utilisant le terminal, ou n’importe quelle application plus « normale »)
un exemple simple :

#!/usr/bin/env php
<?php
# Affiche la date dans le terminal :
echo ("Bonjour !\n");
echo ("Il est ".date("G:i").".\n");
?>

Pour la suite, admettons que ce script est enregistré dans le fichier date.php sur le bureau.

Utiliser le script :

Se déplacer dans le dossier du script

En utilisant la commande cd chemin_vers_le_dossier_du-script
Pour notre exemple :

cd ~/Desktop

Rendre le fichier exécutable

Il suffit d’utiliser la commande chmod +x nom_du_script

chmod +x date.php

Lancer le script

Il suffit de lancer le script en indiquant son chemin. Si on se trouve dans le dossier du script, on faudra faire précéder le nom du script par ./

./date.php

Voir aussi :

Voir aussi

Les mots-clés de cet article :

Cet article est dans la catégorie : Notes

2 commentaires pour “Rendre un fichier exécutable dans le terminal”

Flux commentaires de ce billet - Adresse du trackback - Laisser un commentaire


  1. Piie2rexOver dit :

    Je comprend rien, je veux rendre executable un fichier mais je fais la commande chmod… sur le terminale et ça ne marche aps sur mon mac


  2. Jérémie Bresson dit :

    Je ne sais pas quel fichier tu cherches à rendre exécutable. Dans cet article je donne l’exemple d’un script PHP à utiliser en ligne de commande.
    Ca ne marche pas avec les fichiers exe windows.

    Si tu as un problème technique précis, je te conseil de te tourner vers un forum d’utilisateur mac. (ceux de Macgénération sont très bien).

Laisser un commentaire

Tous les commentaires sont lus et modérés avant d'être publiés. Merci pour votre compréhension.


© 2007-2017 Jérémie Bresson | jmini.fr | Ce site est sous licence Creative Commons - en savoir plus