이론적으로 이는 현재 작업 디렉터리로 변경되므로 중복되어야 합니다. 어쨌든, 이 명령을 실제로 사용할 수 있는 시나리오가 있나요?
답변1
cd .
적어도 두 가지 유용한 사례가 즉시 떠오릅니다 .
현재 디렉터리의 inode 번호 업데이트
우리가 말하자터미널 1당신은 특정 디렉토리와 다른 디렉토리에 있습니다터미널 2디렉터리를 삭제하고 삭제된 디렉터리와 동일한 이름으로 새 디렉터리를 만듭니다. 그런 다음 해당 디렉터리에서 유용한 작업(예: 파일 생성)을 수행할 수 있습니다.터미널 1
cd .
다음을 수행하여 이 디렉터리의 inode 번호를 업데이트 할 수 있습니다 .물리적 분석 디렉토리
디렉터리 이름이 기호 링크인 경우
cd -P .
링크 구성 요소를 물리적으로 확인할 수 있습니다. 이 기능은 POSIX에서 직접 제공됩니다. 예, 여기에는-P
옵션이 필요하므로 알몸이 아니지만cd .
그래도...
답변2
또 다른 작은 효과가 있습니다 $OLDPWD
.
새 터미널을 시작할 때 cd
어딘가에 도착할 때까지 이 변수는 비어 있어야 합니다.
한 가지 가능한 사용법을 생각해 볼 수 있습니다. 그다지 유용하지 않을 수도 있고 약간 순진할 수도 있지만 다음과 같습니다.
cd -
로 이동하면 $OLDPWD
이를 함께 사용하여 cd .
특정 작업 후에 동일한 디렉터리를 앞뒤로 탐색할 수 있습니다.
cd .; for i in {1..100}; do cd -;mkdir "d$i"; cd "d$i"; touch a; done
이것은 스크립트에서 수행하는 작업이 아니지만 명령줄이나 일부 코드 골프에서 직접 수행할 수도 있습니다.
답변3
cd .
본질적으로 무작동이지만 이것이 pushd .
관련될 수 있는 상황을 볼 수 있습니다.
또한 대화형, 절차적 또는 인수를 통해 대상 디렉터리를 지정하는 스크립트에서 명령은 다음과 같습니다.
cd $destinationpath
로 평가할 수 있다
cd .
변수를 이렇게 할당해야 할까요?
답변4
CMD를 사용하여 빈 파일을 생성하려는 경우에도 유용합니다. 다음 트릭을 사용하세요.
cd . > filename.ext