Bash: присвоить пустой пустой строке значение по умолчанию - PullRequest
0 голосов
/ 30 апреля 2020

Вот чего я хочу достичь:

  1. получить значение токена из файла среды с именем .env
  2. , если токен пуст, то curl авторизация сервер
  3. передает токен в среду и запускает npm start

.env выглядит следующим образом:

TOKEN=xyzabc

Ниже приведен мой текущий скрипт: TOKEN=$(grep 'TOKEN' .env | cut -d '=' -f2) npm start

Но я не знаю, как внедрить логи c, перечисленные в шаге 2, это что-то вроде curl auth.server, Кто-нибудь может помочь?

1 Ответ

0 голосов
/ 30 апреля 2020

Чтобы определить количество символов в строке: ${#STRING}. Если grep для присвоения TOKEN значения ничего не возвращает, длина строки будет равна нулю.

TOKEN=$(grep 'TOKEN' .env | cut -d '=' -f2)
[ ${#TOKEN} -eq 0 ] && TOKEN=$(curl server.auth)
npm start

Объяснение

  1. получить значение токена из файла среды с именем .env
    TOKEN=$(grep 'TOKEN' .env | cut -d '=' -f2)
  2. , если токен пуст, затем свернуть сервер аутентификации
    [ ${#TOKEN} -eq 0 ] && TOKEN=$(curl server.auth)
  3. передать токен в среду и запустить npm start
    npm start
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...