J'utilise mac et j'ai:Pourquoi bash alias ne fonctionne pas dans les scripts?
$cat .bashrc|grep la
alias la='ls -la'
alors j'essayé de l'utiliser dans un script:
$cat ./mytest.sh
#!/bin/bash
la
Il court et dire qu'il ne peut pas trouver la:
./mytest.sh: line 2: la: command not found
Pourquoi est-ce? J'ai essayé sur Mac et Linux, même erreur!
@anubhava: « sous-shell » est un terme d'art qui ne semble pas appliquer ici. Je suppose que vous voulez dire quelque chose comme des «scripts shell invoqués», mais dans ce cas, vous décrivez simplement le comportement observé par l'OP, plutôt que de l'expliquer. – ruakh
L'utilisation d'alias dans un script n'est pas une bonne pratique. Utilisez des fonctions à la place. De même, rendre les scripts dépendants de '.bashrc' n'est pas idéal non plus. Voir ce post: https://unix.stackexchange.com/questions/1496/why-doesnt-my-bash-script-recognize-aliases – codeforester
Copie possible de: https://stackoverflow.com/questions/30130954/alias- doesnt-travail-dans-un-bash-script – codeforester