linux – 如何访问您在Bash中获取的文件的基本文件名?

我在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脚本,但在您获取文件时似乎不起作用.

有没有办法从源头获得相同的行为?

解决方法

请参见 Getting the source directory of a Bash script from within,特别是有关BASH_SOURCE变量的注释.

摘要:SCRIPT_NAME = $(basename ${BASH_SOURCE [0]})

相关文章

文章浏览阅读1.8k次,点赞63次,收藏54次。Linux下的目录权限...
文章浏览阅读1.6k次,点赞44次,收藏38次。关于Qt的安装、Wi...
本文介绍了使用shell脚本编写一个 Hello
文章浏览阅读1.5k次,点赞37次,收藏43次。【Linux】初识Lin...
文章浏览阅读3k次,点赞34次,收藏156次。Linux超详细笔记,...
文章浏览阅读6.8k次,点赞109次,收藏114次。【Linux】 Open...