用pwd打击脚本尴尬

Vas*_*nko 13 bash cd pwd

使用bash脚本时,我遇到了一个奇怪的问题.这里是:

PWD=${pwd}
# several commands
cd /etc/nginx/sites-enabled/
# more commands
cd $PWD
# I expect that I returning to my directory, 
# but $PWD contains current dir - /etc/nginx/sites-enabled/
Run Code Online (Sandbox Code Playgroud)

这种行为有点懒惰.$PWDstores命令,它计算当前目录并在我们调用时返回它$PWD,但我想将字符串变量存储在其中.怎么做?

Toa*_*oam 33

PWD是一个环境变量,在更改目录时会更改.

为变量使用不同的名称,

例如:

MYPWD=${PWD}  #or MYPWD=$(pwd)
cd /etc/nginx/sites-enabled/
cd $MYPWD
Run Code Online (Sandbox Code Playgroud)

  • 为变量使用小写(或混合大小写)名称是个好主意,以避免这样的冲突...... (3认同)