Задать вопрос
@LexPex
PM Sysadm

Как задать переменную bash?

Имею скрипт для деплоя, задача в том что бы подставить значение например deploy.sh prod (prod задается в ENV).
Если не подставить значение то скрипт отрабатывает прописанный в нем HOST по умолчанию. Как это реализовать ?

#!/bin/bash

HOST=$PROD
DEST="/var/www/agr/data/www/wiki/public/"

tar -cvzf wiki.tar.gz build/

echo 'Archived'


echo 'Coping sourcee'

scp wiki.tar.gz ${HOST}:${DEST}

echo 'Copied'

echo 'Unziping'

ssh ${HOST} "tar -xvf ${DEST}/wiki.tar.gz -C ${DEST}&& rm ${DEST}/wiki.tar.gz && rm -r ${DEST}/wiki/ && mv ${DEST}/build ${DEST}/wiki"

echo 'unziped'

echo Done
  • Вопрос задан
  • 351 просмотр
Подписаться 1 Средний Комментировать
Ответ пользователя Saboteur К ответам на вопрос (3)
saboteur_kiev
@saboteur_kiev Куратор тега Linux
software engineer
Если вам нужно проверить переменную MYVAR, и если она пустая. то задать ей значение по умолчанию, можете просто проверить это например этими способами:

1.
if [[ -z MYVAR ]]; then
  MYVAR="default value"
fi


2.
echo "MYVAR is: ${MYVAR:="default value}"
Ответ написан