너무 많이 입력한 후에 pushd
전체 경로 스택을 지우고 싶습니다.
popd
스택의 모든 항목을 어떻게 처리합니까 ?
popd
스택에 몇 개가 있는지 알 필요는 없을 것 같은데요 ?
bash 매뉴얼 아니요이걸 커버하는 것 같다.
왜 이것을 알아야 합니까? 나는 까다롭고 스택을 청소합니다.
답변1
dirs -c
당신이 찾고있는 것.
답변2
스택을 모두 지우려면그리고스택 맨 아래에서 작업 디렉터리를 복원하려면 다음을 수행할 수 있습니다.
에서 해당 디렉터리를 검색하고
dirs
, 해당 디렉터리로 변경하고, 스택을 지웁니다.cd "$(dirs -l -0)" && dirs -c
여기 옵션은 를 입력하려고 할 때 실패하지 않도록
-l
전체 경로를 나열 하고 스택 맨 아래에서 첫 번째 항목을 검색합니다.cd
~
-0
@jw013은 경로 확장을 피하여 명령을 더욱 강력하게 만들 것을 제안했습니다.
pushd -0 && dirs -c
또는 오류가 발생할 때까지(디렉터리 스택이 비어 있을 때의 호출 상태입니다
popd
):popd
while (( $? == 0 )); do popd; done