Назначить значение из другого файла sh - PullRequest
0 голосов
/ 29 февраля 2020

У меня два файла sh. a. sh b. sh

В a.sh У меня есть что-то вроде этого:

a=10
sh b.sh $a

echo $a

В b.sh У меня

a=$1
if (( 1 > 2 ));
then
   a=20
else
   a=$1
fi

Я хочу присвоить $a в a.sh после проверки состояния в b.sh. Я пытаюсь с экспортом, но без везения.

Ответы [ 2 ]

1 голос
/ 29 февраля 2020

Вы можете попробовать что-то вроде этого -

a. sh

a=10
a=$(sh b.sh $a)
echo "From b.sh in a.sh a=$a"

b. sh

x=$1
>&2 echo "Got x = $x in b.sh"
if ((2>1)); then
    echo 20;
fi

Выполнение -

sh a.sh

Выход

Got x = 10 in b.sh ## writing to error stream just for display purpose
From b.sh in a.sh a=20
0 голосов
/ 29 февраля 2020

Если я не ошибаюсь, вы можете попробовать, как показано ниже.

секунда. sh:

var = 3
echo"$var"

main. sh:

var = $(./second.sh args...)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...