Se o seu script estiver sendo originado por bash
, $0
será bash
ou -bash
:
[[ $0 =~ ^-?bash$ ]] && echo "Thank you for sourcing me"
Como alternativa, se você souber que seu script é chamado de script.sh
, mas não se importa com a origem do shell, inverta o teste:
[ "X$(basename -- "$0")" != "Xscript.sh" ] && echo "Thank you for sourcing me"
(Note que como o acima é para shells gerais (POSIX), ele não usa [[
tests.)
Para obter mais informações sobre problemas relacionados, consulte StackOverflow .