Невозможно использовать позиционные аргументы в параллельных скриптах - PullRequest
0 голосов
/ 16 октября 2019

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

ripper.sh

#!/bin/bash -e

set -x

# Sock Puppets!!!


./automate_tests.sh quorum t2.xlarge us-east-1 
./automate_tests.sh quorum t2.2xlarge us-east-1 
./automate_tests.sh quorum t3.2xlarge us-east-1 
./automate_tests.sh quorum t3a.xlarge us-west-1 
./automate_tests.sh quorum t3a.2xlarge us-west-1 
./automate_tests.sh quorum a1.4xlarge  us-west-1 
./automate_tests.sh quorum a1.metal ca-central-1 
./automate_tests.sh quorum m4.xlarge ca-central-1 
./automate_tests.sh quorum m4.2xlarge  ca-central-1 
./automate_tests.sh quorum m4.4xlarge eu-central-1 
./automate_tests.sh quorum m4.10xlarge eu-north-1 
./automate_tests.sh quorum m4.16xlarge eu-north-1 
./automate_tests.sh quorum m5.2xlarge eu-north-1 
./automate_tests.sh quorum m5.4xlarge eu-north-1 
./automate_tests.sh quorum m5.8xlarge eu-west-3 
./automate_tests.sh quorum m5.12xlarge eu-west-3 
./automate_tests.sh quorum m5.16xlarge  eu-west-3 
./automate_tests.sh quorum m5.24xlarge eu-west-3 
./automate_tests.sh quorum m5.metal eu-west-1 

automate_tests.sh

#!/bin/bash -e

set -x

CLIENT=$1
VM_FAMILY=$2 
REGION=$3

К сожалению, когда я пытаюсь запустить ripper.sh как параллельное задание, используя nohup sh ripper.sh > out & и редактировать, как показано ниже, он не передает позиционные аргументы в automate_tests.sh

#!/bin/bash -e

set -x

# Sock Puppets!!!


./automate_tests.sh quorum t2.xlarge us-east-1 &
./automate_tests.sh quorum t2.2xlarge us-east-1 &
./automate_tests.sh quorum t3.2xlarge us-east-1 &
./automate_tests.sh quorum t3a.xlarge us-west-1 &
./automate_tests.sh quorum t3a.2xlarge us-west-1 &
./automate_tests.sh quorum a1.4xlarge  us-west-1 &
./automate_tests.sh quorum a1.metal ca-central-1 &
./automate_tests.sh quorum m4.xlarge ca-central-1 &
./automate_tests.sh quorum m4.2xlarge  ca-central-1 &
./automate_tests.sh quorum m4.4xlarge eu-central-1 &
./automate_tests.sh quorum m4.10xlarge eu-north-1 &
./automate_tests.sh quorum m4.16xlarge eu-north-1 &
./automate_tests.sh quorum m5.2xlarge eu-north-1 &
./automate_tests.sh quorum m5.4xlarge eu-north-1 &
./automate_tests.sh quorum m5.8xlarge eu-west-3 &
./automate_tests.sh quorum m5.12xlarge eu-west-3 &
./automate_tests.sh quorum m5.16xlarge  eu-west-3 &
./automate_tests.sh quorum m5.24xlarge eu-west-3 &
./automate_tests.sh quorum m5.metal eu-west-1 &
wait 

Вывод

 + CLIENT=
 + VM_FAMILY=
 + REGION=

Переменные не заполнены. Я был бы признателен за любые указания о том, как заставить это работать.

Обновление

Я обнаружил, что когда я запускаю скрипт без nohup, он работает. Мне нужно иметь возможность запускать этот процесс более 6 часов, и поэтому мне нужен способ заставить это работать. Буду любить указатели

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...