Я зіткнувся BASEDIR=$(pwd)
в сценарії.
Чи є якісь переваги чи недоліки щодо використання BASEDIR="$PWD"
, крім, можливо, того, що $PWD
можна було б перезаписати?
$(pwd)
, тому що $PWD
може застаріти за певних обставин.
pwd
потенційно ви отримаєте менше застійної інформації, ніж $PWD
у деяких кутових випадках. $(pwd)
з іншого боку, не працює, якщо поточний каталог закінчується символами нового рядка, означає розблокувати процес (за винятком ksh93) та використовувати додаткові ресурси. За мою думку , використання $PWD
в $(pwd -P)
це не варто використовувати $(pwd)
.
cd -P -- "$dir"
. якщо є сумніви щодо цінності, $PWD
ви завжди можете cd -P .
першими. це також може бути корисним тим, що ви також отримаєте все, що $PWD
було раніше, $OLDPWD
і тому зможете порівняти їх згодом - і наступна cd ...; cd -
послідовність обов'язково поверне вас туди, де ви зараз знаходитесь.