여러 개의 별도 bash 스크립트가 있습니다. 그들은 서로 다른 일을 하며 규모가 큽니다(각각 70-100줄). 그래서 저는 그것들을 별도의 파일로 보관합니다. 그러나 그것들은 모두 핵심 문제와 관련되어 있으므로 몇 가지 지속적인 가치를 공유합니다.
따라서 간단하게 유지하기 위해 10개의 상수 변수가 있는데 일부는 문자열, 일부는 숫자, 2개는 배열입니다. 모두 10개의 서로 다른 bash 스크립트에서 사용할 수 있어야 합니다. 어떻게 이를 달성할 수 있나요?
이러한 개별 bash 스크립트를 호출할 수 있는 중앙 위치가 있지만 main.sh
항상 그런 것은 아닙니다. 명령줄( ./script1.sh
)에서 직접 호출할 수도 있습니다. 이 경우에도 스크립트에서 변수를 사용할 수 있어야 합니다.
내가 생각할 수 있는 유일한 방법은 파일에 코드를 작성하는 것이고 dev/script1.temp.sh
, 파일을 실행해야 할 때마다 파일 전체에서 특정 상수( )의 모든 항목을 build.sh
간단히 바꾸는 bash 스크립트를 실행합니다.grep
$CONSTANT
build/script1.sh
답변1
constants.env
예를 들어, 모든 상수를 파일에 넣으십시오. 이러한 상수를 사용하는 모든 스크립트에서 . constants.env
해당 상수를 로드할 위치를 지정하세요.
예를 들어, constants.env
:
HELLO=world
script.sh
#!/bin/bash
. constants.env
echo $HELLO
실행 예:
$ ./script.sh
world