방금 리눅스를 배웠고 "The Linux Command-Line"이라는 책을 읽었습니다. 그것은 말합니다 :cd가 작동하는 Linux. 하지만 cd는 bash의 내장 명령입니다.
cd
은 bash의 내장 명령입니다.
which cd
으로는 찾을 수 없습니다. 하지만 어떻게 든 내 컴퓨터에서 잘 작동했습니다.
$ which cd
/usr/bin/cd
CentOS를 사용하고 있기 때문입니까?
방금 리눅스를 배웠고 "The Linux Command-Line"이라는 책을 읽었습니다. 그것은 말합니다 :cd가 작동하는 Linux. 하지만 cd는 bash의 내장 명령입니다.
cd
은 bash의 내장 명령입니다.
which cd
으로는 찾을 수 없습니다. 하지만 어떻게 든 내 컴퓨터에서 잘 작동했습니다.
$ which cd
/usr/bin/cd
CentOS를 사용하고 있기 때문입니까?
쉘 내장형의 경우 man
대신 help
을 사용하십시오. help cd
은 사용 정보를 제공합니다. which
은 바이너리 만 찾기 때문에 오해의 소지가 있습니다. type
을 사용하십시오.
$ type cd
cd is a shell builtin
$ help cd
cd: cd [-L|[-P [-e]] [[email protected]]] [dir]
Change the shell working directory.
...
지금은 일이 같은 시스템에 쓸모없는 바이너리 */usr/bin/cd
이있다. 쉘이 내장 된 쉘이 그것을 대신하기 때문에, 그리고 바이너리가 부모 쉘의 디렉토리를 변경하는 것이 불가능하기 때문에 둘 다 쓸모가 없습니다. 그것을 사용하려고하면 아무것도하지 않는다는 것을 알게 될 것입니다.
/dir1$ /usr/bin/cd /dir2
/dir1$
그것은별로 쓸모가 없습니다. 이것은 디렉토리가 존재하고'+ x' 권한이 있는지를 결정하는 데 사용될 수 있습니다. –
@CharlesDuffy 당신은'test -d'와'test -x'를 사용할 수 있습니다. (나는 당신이 그것을 알고 있다는 것을 압니다.) – hek2mgl
@ hek2mgl, 물론. * 독점적 인 용도로 사용했다고 말하지 않았습니다. –
예. 그것은'which'를 실행할 때 여러분의 시스템과 쉘에 의존 할 것입니다. – JNevill
'/ usr/bin/cd/tmp'을 시도 했습니까? 'pwd'? 너는 놀랄 것이다. 그러나 POSIX는 (원하지 않는)'cd' 바이너리를 요구할 것이라는 소문이 돌았습니다! –
관련 ([unix.se]에서) : ['cd'외부 명령의 요점은 무엇입니까?] (https://unix.stackexchange.com/questions/50058/what-is-the-point-of- the-cd-external-command) –