by shigemk2

当面は技術的なことしか書かない

Bash popdの挙動確認 4.2 vs 4.4

  • The `popd' builtin now treats additional arguments as errors.

popdに余計な引数をつけたらどうなるか、挙動の確認

バージョンごとの確認にはDockerが本当に便利。 https://hub.docker.com/_/bash

bash:4.2

エラーにならない(でもpopd自体は失敗する)

$ docker run -it bash:4.2.53
bash-4.2# pushd /usr/local/
/usr/local /
bash-4.2# pwd
/usr/local
bash-4.2# cd /root/
bash-4.2# pwd
/root
bash-4.2# popd /usr/local/
~
bash-4.2# echo $?
0
bash-4.2# pwd
/root

bash:4.4

エラーになる

$ docker run -it bash:4.4.23
bash-4.4# pushd /usr/local/
/usr/local /
bash-4.4# pwd
/usr/local
bash-4.4# cd /root/
bash-4.4# pwd
/root
bash-4.4# popd /usr/local/
bash: popd: /usr/local/: invalid argument
popd: usage: popd [-n] [+N | -N]
bash-4.4# echo $?
2
bash-4.4# pwd
/root

NEWS - bash.git - bash