"Bash 쉘스크립트 폴더명 얻기"의 두 판 사이의 차이

잔글 (Jmnote님이 Bash 스크립트 현재 폴더명 얻기 문서를 Bash 쉘스크립트 현재 폴더명 얻기 문서로 이동했습니다)
 
(사용자 2명의 중간 판 9개는 보이지 않습니다)
1번째 줄: 1번째 줄:
==개요==
==개요==
;Bash 스크립트 폴더명 얻기
;Bash 쉘스크립트 폴더명 얻기
<source lang='bash'>
;Bash 쉘스크립트 현재 폴더명 얻기
#!/bin/bash
;Bash 쉘스크립트가 있는 폴더명 얻기
<syntaxhighlight lang='bash'>
FOLDER_NAME=$(basename $(dirname $(realpath $0)))
FOLDER_NAME=$(basename $(dirname $(realpath $0)))
echo $FOLDER_NAME
</syntaxhighlight>
</source>
:→ 스크립트($0)의 절대경로(realpath)를 얻고, 디렉토리명(dirname)을 얻은 후, 맨 뒷부분인 폴더명(basename)을 얻는다.
:→ 스크립트($0)의 절대경로(realpath)를 얻고, 디렉토리명(dirname)을 얻은 후, 맨 뒷부분인 폴더명(basename)을 얻는다.


==실행예시==
==실행예시==
<source lang='console'>
<syntaxhighlight lang='console'>
root@localhost1:/tmp/aaa# cat test.sh
root@localhost1:/tmp/aaa# cat test.sh
#!/bin/bash
#!/bin/bash
FOLDER_NAME=$(basename $(dirname $(realpath $0)))
FOLDER_NAME=$(basename $(dirname $(realpath $0)))
echo $FOLDER_NAME
echo $FOLDER_NAME
</source>
</syntaxhighlight>
{{소스헤더|하위 폴더에서 호출 테스트}}
<syntaxhighlight lang='console'>
<source lang='console'>
root@localhost1:/tmp/aaa# ./test.sh  
root@localhost1:/tmp/aaa# cd bbb/
root@localhost1:/tmp/aaa/bbb# ../test.sh  
aaa
aaa
root@localhost1:/tmp/aaa/bbb# sh ../test.sh  
root@localhost1:/tmp/aaa# sh test.sh  
aaa
aaa
root@localhost1:/tmp/aaa/bbb# bash ../test.sh  
root@localhost1:/tmp/aaa# bash test.sh  
aaa
aaa
</source>
</syntaxhighlight>
{{소스헤더|상위 폴더에서 호출 테스트}}
<syntaxhighlight lang='console'>
<source lang='console'>
root@localhost1:/tmp/aaa# cd ..
root@localhost1:/tmp/aaa/bbb# cd ../..
root@localhost1:/tmp# ./aaa/test.sh
root@localhost1:/tmp# ./aaa/test.sh
aaa
aaa
34번째 줄: 31번째 줄:
root@localhost1:/tmp# bash aaa/test.sh  
root@localhost1:/tmp# bash aaa/test.sh  
aaa
aaa
</source>
</syntaxhighlight>
<syntaxhighlight lang='console'>
root@localhost1:/tmp# cd aaa/bbb/
root@localhost1:/tmp/aaa/bbb# ../test.sh
aaa
root@localhost1:/tmp/aaa/bbb# sh ../test.sh
aaa
root@localhost1:/tmp/aaa/bbb# bash ../test.sh
aaa
</syntaxhighlight>


==같이 보기==
==같이 보기==
44번째 줄: 50번째 줄:
* [[Bash 쉘스크립트 있는 위치로 이동]]
* [[Bash 쉘스크립트 있는 위치로 이동]]


[[분류: Bash]]
[[분류: bash 스크립트]]

2021년 10월 18일 (월) 10:39 기준 최신판

1 개요[ | ]

Bash 쉘스크립트 폴더명 얻기
Bash 쉘스크립트 현재 폴더명 얻기
Bash 쉘스크립트가 있는 폴더명 얻기
FOLDER_NAME=$(basename $(dirname $(realpath $0)))
→ 스크립트($0)의 절대경로(realpath)를 얻고, 디렉토리명(dirname)을 얻은 후, 맨 뒷부분인 폴더명(basename)을 얻는다.

2 실행예시[ | ]

root@localhost1:/tmp/aaa# cat test.sh
#!/bin/bash
FOLDER_NAME=$(basename $(dirname $(realpath $0)))
echo $FOLDER_NAME
root@localhost1:/tmp/aaa# ./test.sh 
aaa
root@localhost1:/tmp/aaa# sh test.sh 
aaa
root@localhost1:/tmp/aaa# bash test.sh 
aaa
root@localhost1:/tmp/aaa# cd ..
root@localhost1:/tmp# ./aaa/test.sh
aaa
root@localhost1:/tmp# sh aaa/test.sh
aaa
root@localhost1:/tmp# bash aaa/test.sh 
aaa
root@localhost1:/tmp# cd aaa/bbb/
root@localhost1:/tmp/aaa/bbb# ../test.sh 
aaa
root@localhost1:/tmp/aaa/bbb# sh ../test.sh 
aaa
root@localhost1:/tmp/aaa/bbb# bash ../test.sh 
aaa

3 같이 보기[ | ]

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}