도움된 링크 : link
- Python의 subprocess module을 사용해서 FreeSurfer (Linux-based program to preprocess T1-weighted image) 를 실행하려고 함
- FreeSurfer recon-all은 shell 환경에서 사용해야하고, 이를 위해서 설정해야할 환경변수가 있음
- 기존의 shell-based script에서 Python-based script로 전환을 하려고 했으나 불가능
subprocess
모듈은 child process를 열어서 커맨드를 수행한 뒤 닫기 때문에, parent process에 원하는 환경변수를 설정할 순 없었던 것Alias : 별칭
/etc/profile
: 시스템 전역 쉘 변수
/etc/profile
/etc/profile
/etc/profile.d
) 읽음/etc/bashrc
: 쉘 함수, Alias 시스템 전역 변수 정의
~/.bash_profile
: 유저 개인의 환경 설정
bash shell
을 사용하는 유저 개인 (지역변수) 의 path, 시작 프로그램 설정/etc/profile
과 동일~/.bashrc
: 유저 개인의 alias 및 변수 설정
/etc/bashrc
파일에서 시스템 전역 변수를 읽은 뒤, 이 파일에서 유저의 개인적인 명령어 alias, 환경변수를 설정~/.bash_logout
: 로그아웃 설정파일
source
commandsource
command 사용bash
= Bourne Again SHell
의 줄임말source
is not an executable command, it’s a shell builtin.