Script Terminal

myckmack

Membre expert
Club iGen
6 Octobre 2001
2 748
17
Imaginons que j'utlise répétitivement le Terminal de Panther avec les mêmes commandes. Comment puis-je faire pour concevoir un fichier qui, lorsque je l'ouvre, exécute directement ces commandes (un peu dans l'esprit des scripts AppleScript que l'on peut enregistrer comme applications indépendantes) ?
 
tu peux faire un alias, pour une commande avec des options spéciales, qui t'évite de les réécrire à chaque fois.
Il faut éditer le fichier ~/.tcshrc (si tu utilises tcsh comme shell) ou ~/.profile (si tu utilises bash pour shell)
et indiquer une commande du genre (c'est juste une exemple que j'ai dans ma config) :
Bloc de code:
 alias gwhois "whois -h geektools.com"
ce qui en général est :
Bloc de code:
 alias nom_que_tu_choisis_pour_la_nouvelle_commande "commande_complète"

fait attention à ne pas choisir un nom déjà utilisé pour autre chose.

Sinon, mieux (enfin, pour faire plus propre, et ne pas surcharger ton fichier de config shell), tu peux écrire un script shell, voir là pour des détails :
http://www.xrings.net/xrings/article.php3?id_article=210

Si tu attribues des droits executable à ton fichier script.sh, il me semble que tu peux ensuite le lancer par un double clic dans panther, sinon, tu peux écrire un alias pour ce script shell, qui sera lancé par un seul mot dans le terminal.

Tu peux trouver des tonnes de documentation sur toutes ces manips dans toutes les documentations unix
smile.gif

 
Et n'oublie pas que si tu veux faire exécuter plusieurs commandes à la suite, tu peux utiliser le ";" (point-virgule). Par exemple, si tu veux qu'à chaque fois que tu fasse "cd", ça t'affiche le "ls" du répertoire dans lequel tu viens d'arriver, tu peux faire :

Bloc de code:
alias cdl "cd $1; ls ."

euh.. j'ai juste un petit doute pour le $1, c'est peut-être $0 ou alors autre chose ? ou alors c'est tout autre chose et je me souviens mal.. :-/..
 
molgow a dit:
Et n'oublie pas que si tu veux faire exécuter plusieurs commandes à la suite, tu peux utiliser le ";" (point-virgule).
Je connaissais
wink.gif
.

euh.. j'ai juste un petit doute pour le $1, c'est peut-être $0 ou alors autre chose ? ou alors c'est tout autre chose et je me souviens mal.. :-/..
C'est bien $1
smile.gif
.
 
maousse a dit:
...

Sinon, mieux (enfin, pour faire plus propre, et ne pas surcharger ton fichier de config shell), tu peux écrire un script shell, voir là pour des détails :
http://www.xrings.net/xrings/article.php3?id_article=210
Merci pour le lien. Je vais y jeter un oeil.

Si tu attribues des droits executable à ton fichier script.sh, il me semble que tu peux ensuite le lancer par un double clic dans panther

...
C'est exactement ce que je voudrais faire.
 
maousse a dit:
...

Si tu attribues des droits executable à ton fichier script.sh, il me semble que tu peux ensuite le lancer par un double clic dans panther

...
Ça marche. À ceci près que le script lance le Terminal et que le Terminal reste ouvert
frown.gif
. Mais j'ai progressé grâce à toi, merci
smile.gif
.
 
Je viens de penser à une autre possibilité. Avec AppleScript, on peut exécuter des scripts shell : il suffit d'écrire un script AppleScript contenant un script shell et de l'enregistrer comme application
smile.gif
.