Подтвердить что ты не робот

SCRIPT_PATH = "$ {BASH_SOURCE [0]}" Плохая замена

В Centos мой script работает нормально. Но на Debian Squeeze, когда я запускаю script, я получил:

cpfailover.sh: 30: Bad substitution

Линия script скажет:

SCRIPT_PATH="${BASH_SOURCE[0]}";

Я видел во многих примерах, даже здесь, это правильная строка №. где проблема.

4b9b3361

Ответ 1

Используете ли вы /bin/sh? В Squeeze Debian /bin/sh является символической ссылкой на /bin/dash, которая не поддерживает ${array[0]}.

Ответ 2

Измените свой код на

SCRIPT_PATH=$0;

вместо

SCRIPT_PATH="${BASH_SOURCE[0]}";