스크립트 이름 만 인쇄하는 방법은 무엇입니까? : “foo.sh”를 어떻게 출력 할 수

[username@notebook ~]$ cat foo.sh 
#!/bin/bash

echo "$0"
[username@notebook ~]$ ./foo.sh
./foo.sh
[username@notebook ~]$ 

질문 : “foo.sh”를 어떻게 출력 할 수 있습니까? 아무리 실행 되었어도



답변

사용 basename:

#!/bin/bash

basename -- "$0"

변수에 변수를 할당하려면 다음을 수행하십시오.

my_name=$(basename -- "$0")

답변

POSIX는 매개 변수 확장 만 필요합니다 .

#!/bin/bash

printf '%s\n' "${0##*/}"