很久很久以前,我写了一个脚本来加密备份些下载好的东西,并使用了crontab定期运行。其代码类似如下
1 |
|
从脚本上看倒是没啥问题,但在我这次想要从里面提取文件时,却发现使用脚本中的密码出错。百思不得其解的我尝试在终端中输入了
1 | root@home:~# PWD="xxxxxxxxx" |
结果神奇的事情出现了,对 ${PWD} 赋值的行为改变了当前显示的文件夹名称,并且在cd之后, ${PWD} 的值自动被重写为当前的目录值了,而不是我最初指定的那个值了。一番搜索后才知道,原来 ${PWD} 是一个环境变量,和 pwd 命令几乎类似,指向了当前的工作目录。而我在脚本中,先对PWD变量进行赋值,随后使用cd切换了工作目录,导致 $PWD 的值在切换后实际和 ${FOLDER} 值相同。
