source some_file
un_fichier:
doit ()
{
echo doit $1
}
export TEST=true
Si je source un fichier, la fonction "doit" et la variable TEST sont disponibles sur la ligne de commande. Mais en exécutant ce script:
script.sh:
#/bin/sh
echo $TEST
doit test2
Renverra la valeur de TEST, mais générera une erreur concernant la fonction inconnue "doit".
Puis-je également "exporter" la fonction ou dois-je utiliser source_file dans script.sh pour pouvoir utiliser la fonction à cet endroit?
#!/bin/sh
aussi, mais il est recommandé de l’utiliser #!/bin/bash
afin d’éviter les problèmes lorsque le shell par défaut n’est pas bash.
#!/bin/sh
pour#!/bin/bash
et juste aprèsdoit() {...}
export -f doit