D0000.determine-source-filepath.sh (776B)
1 #!/bin/bash 2 3 4 ## source されたファイルの中で $0 は何に設定されているか? 5 echo "0=$0" 6 ## → 通常の様に実行すれば当然そのファイルの名前だが、 7 ## source で実行した場合、自分自身が何処に配置されているかは分からない。 8 9 ## 手で source ... と入力した場合に source された中から BASH_COMMAND を参照する事が出来るか? 10 echo "BASH_COMMAND=$BASH_COMMAND" 11 ## → 更に内側で実行されているコマンドが取得されるだけである。 12 ## つまりこの場合 'echo "BASH_COMMAND=$BASH_COMMAND"' が BASH_COMMAND に入っている。 13 14 ## BASH_SOURCE には何が入っているだろうか? 15 echo "${BASH_SOURCE[*]}" 16 ## → どうやらこれで取得できる様子? 17