안녕하세요. CD에 대해 혼란스러워요. 어떻게 해야 하나요?

안녕하세요. CD에 대해 혼란스러워요. 어떻게 해야 하나요?

Linux 터미널에 cd --를 입력했는데 내가 인식하지 못하는 디렉터리로 이동했습니다. CD - 어디로 갈까요? 루트 디렉터리인가요?

답변1

인수가 제공되지 않을 때 기본 동작은 cd변수가 제공하는 디렉터리로 이동하는 것입니다 $HOME. 이것은POSIX에 의해 시행됨:

디렉토리 피연산자가 제공되지 않고 HOME 환경 변수가 비어 있거나 정의되지 않은 경우 기본 동작은 구현에 따라 정의되며 추가 단계를 수행해서는 안 됩니다.

그것은--또한 POSIX 기능많은 도구에서는 이를 사용하여 옵션의 끝을 나타냅니다. 이는 -예를 들어 다음과 같이 시작하는 이름으로 작업하는 데 유용합니다. 예를 들어, 이 디렉토리에는 다음과 같은 디렉토리가 있습니다 -a.

$ ls
-a

이 작업을 수행 하려고 하면 다음과 같은 결과를 cat얻습니다.

$ cat -a
cat: invalid option -- 'a'
Try 'cat --help' for more information.

--이것이 들어오는 곳 입니다 :

$ cat -- -a
These are the contents of file -a!

따라서 귀하의 예에서는 인수의 끝을 나타내기 위해 cd실행을 따르는 것입니다. 이는 인수 없이 실행되는 것으로 해석됩니다. 그 결과 마치 혼자 달리는 것처럼 자신의 영역에 들어가게 되고 , 이미 그 안에 있다면 아무 것도 변하지 않은 것처럼 보입니다. $ grep foo -a--cd$HOMEcd$HOME


후자가 더 명확한 오류를 제공하기 때문에 실제로 cd --대신 실행했다고 가정합니다 .cd--

$ cd--
bash: cd--: command not found

자신만의 스크립트나 기능이 없다면 cd--우리는 무슨 일이 일어나고 있는지 알 수 없지만 알 수는 있습니다.

답변2

다음 명령을 사용하여 디렉터리를 변경할 수 있어야 합니다.cd /path/

도움이 될 만한 온라인 토론을 찾았습니다.https://askubuntu.com/questions/711390/what-does-cd-do-i-used-it-and-im-now-stuck-in-a-directory

답변3

CD는 디렉토리를 변경합니다. 디렉토리를 종료하려면 다음을 입력 cd ..하고 Enter를 누르십시오.

그냥 입력했다면 cd --디렉토리를 전혀 변경하지 않았을 것입니다.

이게 도움이 되길 바란다.

관련 정보