bashシェルから属性(env)ファイルの属性値をbashシェルのvarにロードするには?

bashシェルから属性(env)ファイルの属性値をbashシェルのvarにロードするには?

私は持っています

SA_PASSWORD=Password1!

ファイルでテスト/.makefile_test_env。私のbashシェルの変数に「Password1!」値を取得したい。私はこれを試しました

$ MY_VAR=$(grep SA_PASSWORD tests/.makefile_test_env | xargs)

残念ながら、これは返されます

$ echo $MY_VAR
SA_PASSWORD=Password1!

「SA_PASSWORD=」部分をフィルタリングするには?

ベストアンサー1

コマンドでこれを実行できますが、cutスクリプトにパスワードを残すことはおそらく良い考えではないことに注意してください。

[ekaj@headdesk ~]$ cat vars
SA_PASSWORD=Password1!
[ekaj@headdesk ~]$ cat setvar.sh
#!/bin/bash
echo "MY_VAR is currently set to: $MY_VAR"
MY_VAR=$(grep SA_PASSWORD ./vars | cut -d'=' -f 2-)
echo "MY_VAR is currently set to: $MY_VAR"
[ekaj@headdesk ~]$
[ekaj@headdesk ~]$ ./setvar.sh
MY_VAR is currently set to:
MY_VAR is currently set to: Password1!
[ekaj@headdesk ~]$

-f 2-最初のフィールド以降のすべてのフィールドを印刷します=。これは、パスワードに等号がある場合に便利です。

おすすめ記事