2

Привет у меня есть скрипт bash, который требует условного выполнения нескольких строк кода в зависимости от того, используется ли уже порт 80:

sudo git fetch origin;
sudo git checkout master;
sudo git pull;

--- если порт 80 открыт

echo Starting Meteor;
export LC_ALL=C;
export ROOT_URL=$ROOT_URL;
sudo meteor --port 80;

--- еще

echo Meteor already running;

Тогда, как вишня на вершине, так как Meteor - это длительный процесс, как мне заставить его работать в фоновом режиме и выходить из сценария? (Я пробовал nohup &, но я понятия не имею, что такое лучшая практика?)

Спасибо

1 ответ1

4

Вы можете использовать:

netstat -ln | grep ":80"

Если код возврата ($?) 0, значит что-то на порте:80, иначе нет. Так, например:

netstat -ln | grep ":80 " 2>&1 > /dev/null 
if [ $? -eq 1 ]; then   
     ... your code here 
fi

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .