我有一个应用程序的目录结构:bin、config、lib。
在bin目录中,我有一个bash脚本。我希望能够根据脚本文件在bin目录中的位置,在bash脚本中为config和lib目录设置变量。我可以通过以下操作获得正在执行的脚本的目录名:
BIN_DIR="$(cd-p"$(目录名"${BASH_SOURCE[0]}")"&&pwd)"
我的问题是:如何根据BIN_DIR计算config和lib目录的diectory路径?
谢谢。
您可能只需要使用以下内容:
cd `dirname $0`/..
BASE_DIR=`pwd`
cd -
BIN_DIR=${BASE_DIR}/bin
CONFIG_DIR=${BASE_DIR}/config
LIB_DIR=${BASE_DIR}/lib
如果您有BIN_DIR
,那么您可以使用获得项目目录的绝对路径
PROJECT_DIR=`readlink -f $BIN_DIR/..`
然后
CONFIG_DIR=$PROJECT_DIR/config
LIB_DIR=$PROJECT_DIR/lib