bash
실행되는 스크립트로 부터 프로젝트 홈의 절대 경로 알아내기
wefree
2021. 10. 13. 11:17
문제
디렉토리 구조가 아래와 같고, /home/windbird/work/project/bin/run.sh 가 있을 때
$pwd
/home/windbird
$tree work/
work/
└── project
├── bin
│ └── run.sh
├── conf
│ └── server.conf
└── logs
cd /home/windbird/; sh work/project/bin/run.sh 로 실행되거나 cd /home/windbird/work; sh project/bin/run.sh 로 실행되든지 간에 항상 프로젝트 홈인 /home/windbird/work/project 가 출력되도록 run.sh 스크립트를 작성해 보자
코드
#!/bin/bash
bin_dir=`dirname "$0"`
home_dir=`cd $bin_dir; cd ..; pwd`
echo $home_dir