다음과 같은 스크립트가 있습니다.
export foo=/tmp/foo
export bar=/tmp/bar
빌드 할 때마다 'source init_env'(init_env는 위의 스크립트 임)를 실행하여 일부 변수를 설정합니다.
Python에서 동일한 작업을 수행하기 위해이 코드를 실행했습니다.
reg = re.compile('export (?P<name>\w+)(\=(?P<value>.+))*')
for line in open(file):
m = reg.match(line)
if m:
name = m.group('name')
value = ''
if m.group('value'):
value = m.group('value')
os.putenv(name, value)
그러나 누군가 다음과 같은 줄을 init_env파일 에 추가하는 것이 좋을 것이라고 결정했습니다 .
export PATH="/foo/bar:/bar/foo:$PATH"
분명히 내 Python 스크립트가 무너졌습니다. 이 줄을 처리하도록 Python 스크립트를 수정할 수 있지만 나중에 누군가 가 init_env파일 에서 사용할 새로운 기능을 제시 하면 나중에 중단 됩니다.
문제는 Bash 명령을 실행하는 쉬운 방법이 있는지 여부입니다 os.environ.