我在bash终端中寻找一个需要导出一些环境变量的文件。
示例:
source linux_x86.env
env文件看起来像这样:
export ARCH=/home/user/project/linux_x86
我有很多不同的架构要编译,我希望能够做到这样的事情:
export ARCH=/home/user/project/`basename $0 .env`
其中basename $0 .env
会给我env文件的基本名称
bash linux_x86.env
linux_x86
上面的工作是一个bash脚本,但在你找到文件时似乎不起作用。
有没有办法从源头获得相同的行为?
答案 0 :(得分:11)
参见Getting the source directory of a Bash script from within,特别是关于BASH_SOURCE变量的评论。
摘要:SCRIPT_NAME=$(basename ${BASH_SOURCE[0]})