BASEDIR=$(pwd)
スクリプトで遭遇しました。
を使用した場合に上書きさBASEDIR="$PWD"
れる$PWD
可能性がある以外の利点または欠点はありますか?
3
で、いくつかの情報unix.stackexchange.com/a/79621
—
ステファンChazelas
@StéphaneChazelas非常に興味深い記事を書いてください。私はまだ途中であり、続行しますが
—
ミニックス14
$(pwd)
、$PWD
特定の状況では時代遅れになる可能性があるため、私が理解している限り、を使用する方が良いです。
一部のシェル(bash、dash、zsh、ksh93などではない)でのみ、一部のコーナーケース
—
ステファンシャゼル14
pwd
よりも古い情報が少なくなる可能性があります$PWD
。$(pwd)
一方、現在のディレクトリが改行文字で終わる場合は機能しません。これは、プロセスをフォークして(ksh93を除く)、余分なリソースを使用することを意味します。私の見解は、の使用$PWD
であり$(pwd -P)
、使用する価値はありません$(pwd)
。
一番下にあるのは、ステファンによるの使用に関する言及
—
mikeserv 14
cd -P -- "$dir"
です。$PWD
あなたの価値に疑問がある場合は、常にcd -P .
最初にすることができます。これは、その$PWD
前にあったものも取得$OLDPWD
し、後で比較できるという点でも有益です。次のcd ...; cd -
シーケンスで、現在の場所に確実に戻ることができます。