スクリプトを再実行して変数を設定して取得するにはどうすればよいですか?

スクリプトを再実行して変数を設定して取得するにはどうすればよいですか?

スクリプトを実行していますが、スクリプトを実行して変数を設定したいと思います。

スクリプトファイル

#!/bin/bash
# Check if passed parameters
if [[ -n $1 && -n $2 ]]; then
    export USER="$1"
    export PASS="$2"
fi
echo $USER $PASS

これを実行すると、すべてが期待どおりに機能します。

root@master:/src#./script.sh root root
root root

しかし、引数なしでスクリプトを実行する変数を検索しようとすると、何も得られません。

答え1

私たちが実行しているスクリプトは現在のコマンドライン環境のサブプロセスなので、スクリプトが後で使用できるようにこれらの変数を保存するのを防ぎます。

だから私は実際にこれを実行してこの問題を解決しました。

. ./script.sh root root

関連情報