我BASEDIR=$(pwd)
在脚本中遇到。
除了使用BASEDIR="$PWD"
以外,是否还有其他优点或缺点$PWD
会被覆盖?
3
在一些信息unix.stackexchange.com/a/79621
—
斯特凡Chazelas
@StéphaneChazelas非常有趣的写作。我只是半路而已,并且会继续,但是据我所知,最好使用
—
Minix
$(pwd)
,因为$PWD
在某些情况下可能会过时。
仅在某些shell中(例如,不是bash,dash,zsh或ksh93),与某些极端情况
—
斯特凡Chazelas
pwd
相比$PWD
,可能会给您更少的过时信息。$(pwd)
另一方面,如果当前目录以换行符结尾,则无效,这意味着派生一个进程(ksh93除外)并使用额外的资源。我的看法是使用$PWD
的$(pwd -P)
,这是不值得使用$(pwd)
。
在底部,斯蒂芬提到使用
—
mikeserv 2014年
cd -P -- "$dir"
。如果对$PWD
您的价值有任何疑问,可以永远cd -P .
先行。这也可能是有益的,因为您还可以获得$PWD
之前的内容,$OLDPWD
因此可以在之后进行比较-并且下一个cd ...; cd -
序列将确保您回到现在的位置。