Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 06/02/2012, à 03:54

keop$

le bash

Bonsoir nouveau je debute en script shell j'ai vu ceci dans un script et je voudrais savoir ou trouver la documentation la dessus et comment cela s'appelle

echo ${0##*/}

Et puis je voudrais savoir si la ligne du début dans les script

#!/bin/bash

Si le script est appelé avec bash fichier.sh  celle-ci est facultative c'est bien ça ?

Hors ligne

#2 Le 06/02/2012, à 04:46

aduxas

Re : le bash

$0 est la variable bash qui contient l'argument numéro zéro de la commande qui invoque ce script.  C'est donc le nom du script même.  Le script va raccourcir ce nom en enlevant un slash et tout ce qui le précède (## va le plus loin possible; simple # s'arrête au premier slash).
Tu peut donc faire

$ monscript
$ Documents/../monscript

et les deux vont donner

monscript

L'extension .sh ne signifie pas automatiquement qu'il s'agit d'un script bash.

Dernière modification par aduxas (Le 06/02/2012, à 04:47)

Hors ligne

#3 Le 06/02/2012, à 09:10

pingouinux

Re : le bash

Bonjour,

keop$ #1 a écrit :

je voudrais savoir ou trouver la documentation la dessus

man bash
keop$ #1 a écrit :

#!/bin/bash
Si le script est appelé avec bash fichier.sh  celle-ci est facultative c'est bien ça ?

Oui

Hors ligne

#5 Le 06/02/2012, à 15:46

n3o51

Re : le bash

Bonjour il s'agit de Substitution de paramètres

http://abs.traduc.org/abs-5.0-fr/ch09s03.html
http://wiki.bash-hackers.org/syntax/pe
http://pwet.fr/man/linux/commandes/bash voir Remplacement des paramètres

exemple :

VAR=abbbc
#${variable##préfixe}
echo ${VAR##a*b}
# retourne c car prend  abbb le préfixe le plus long
echo ${VAR#a*b}
#retourne bbc car prend ab le préfixe le plus court

Welcome to the real world
________________________________

Hors ligne