次のディレクトリでスクリプトを実行しています。
a/b/c/d/script.bash
このような環境変数projrootを作成する必要があります。
script=$(readlink -f $0) # Absolute path to this script.
export projroot=$(dirname $(dirname $script)) #This points to the absolute path
代わりに、どのように指すように定義しprojroot
ますか?projroot
a/b
a/b/c
答え1
ネストを使用するdirname
か、次を使用できます。Bash パラメータ拡張そしてrealpath
。
実際のパスを使用する:
script=$(readlink -f "$0")
export projroot=$(realpath -mL "${script}/../../..")
Bash パラメーター拡張を使用します。
script=$(readlink -f "$0")
export projroot="${script%/*/*/*}"