Скрипты при загрузке: Как я могу проверить, существует ли переменная в загрузке? - PullRequest
0 голосов
/ 06 марта 2020

В сценарии u-boot я пытаюсь написать простой сценарий, который проверяет, существует ли переменная, например:

if test -z $var; then
    setenv var 1;
fi
saveenv

, чтобы при следующих загрузках переменная var не получить снова.

Кажется, что скрипт u-boot отвечает на синтаксис оболочки Hu sh, но я не могу найти способ сделать это так, как если бы вы делали это в обычной оболочке.

У кого-нибудь есть идеи, как это сделать? Или другая идея повторить это поведение?

Спасибо

1 Ответ

0 голосов
/ 06 марта 2020

Наконец-то я нашел решение.

Вместо использования test я использую printenv для проверки существования переменной.

Пример:

if printenv var; then echo found; else echo not found; setenv var 1; fi
saveenv

Это напечатает not found в первый раз, но напечатает found впоследствии. Хитрость заключалась в том, чтобы использовать возвращаемое значение printenv.

...