두 개의 변수를 설정하는 이라는 파일이 있다고 가정해 보겠습니다 variables.sh
.
foo=bar
bar=foo
이 파일을 만들면 source
현재 셸에서 이러한 변수를 사용할 수 있지만 두 번째 셸 스크립트에서 사용하려면 해당 변수를 내보내야 하므로 파일은 다음과 같아야 합니다.
export foo=bar
export bar=foo
source
어떤 종류의 +를 수행하는 것이 가능합니까? export
아니면 각 변수를 설정하기 전에 +가 있도록 변경해야 합니까 variables.sh
?export
답변1
두 번째 쉘 스크립트에서 이를 사용하려면 이를 내보내야 하므로 파일은 다음과 같아야 합니다.
두 번째 파일을 얻거나 얻을 수 있습니다 variables.sh
. 파일 처리 결과를 평가하는 등 작업을 수행하는 방법에는 여러 가지가 있지만 가장 깔끔한 방법은 set -a
bash 쉘을 사용하는 것입니다.
-a Automatically mark variables and functions which are
modified or created for export to the environment of
subsequent commands.
따라서 다음을 통해 목표를 달성할 수 있습니다.
set -a
source variables.sh
지적한대로l0b0set +a
, 후속 쉘 코드에서 자동으로 변수를 계속 내보내지 않도록 나중에 이 작업을 수행할 수 있습니다 .