LINUX.ORG.RU

Как проверить каким образом был запущен скрипт?

 ,


0

1

Если запустить мой скрипт через

sh script.sh
то я получаю ошибки связанные с тем, что он должен быть запущен через
bash script.sh
Как проверить каким образом пользователь запустил скрипт, чтобы вывести ему подсказку?


Проверь значение переменной $BASH. Если запущено через bash, то там будет путь к бинарнику bash. Иначе она должна быть пустая.

tiandrey ★★★★★
()
Ответ на: комментарий от reey
ex@ex:~/bin> echo $SHELL
/bin/bash
ex@ex:~/bin> cat tst
#!/usr/bin/env bash

echo ${SHELL}
echo ${BASH}

exit 0;
ex@ex:~/bin> tst
/bin/bash
/bin/bash
ex@ex:~/bin> /bin/sh tst
/bin/bash
/bin/sh
expelled ★★
()
Ответ на: комментарий от reey
ex@ex:~/bin> cat tst
#!/usr/bin/env sh

echo ${SHELL}
echo ${BASH}

exit 0;
ex@ex:~/bin> tst
/bin/bash
/usr/bin/sh
ex@ex:~/bin> /bin/sh tst
/bin/bash
/bin/sh
expelled ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.