Bashスクリプトのディレクトリスタック(pushdとpopd)の動作

Bashスクリプトのディレクトリスタック(pushdとpopd)の動作

잘못 작성했지만 pushd /etc완료하지 못했다 면 어떻게 되나요 popd? 스크립트 실행이 끝나고 Bash가 종료된 후에도 해당 스크립트는 /etc여전히 pushd+ popd디렉터리 스택/RAM에 남아 있나요?bash

수동으로 지우지 않고 터미널 에뮬레이터 세션(해당 터미널 에뮬레이터 세션에 대한 셸 프로세스를 종료해야 함)을 닫으면 pushd+directory 스택이 popd지워지나요(변수와 마찬가지로)?bashpopd

ベストアンサー1

pushdコマンドpopdで使用されるディレクトリスタックは、bash現在のシェルにローカルなディレクトリスタックです。つまりpopd、スクリプト内で使用しないと、スクリプト外のディレクトリスタックには影響しません。

ターミナルが閉じると(シェルが終了します)、スタックはクリアされます。

新しいシェルを起動するたびに、デフォルトでディレクトリスタックも空ですbash

おすすめ記事