“-”(빼기)로 시작하는 이름을 가진 디렉토리에 CD를 넣는 방법?


10

이름이 "-"로 시작하는 폴더가 있습니다. 터미널로 입력하려고 cd하면 "-"를 옵션으로 해석합니다. 어떻게 관리 할 수 ​​있습니까?


1
디렉토리 / 폴더 이름에 이러한 문자를 사용하지 않는 것이 좋습니다.
Mindwin

당신은 그냥 할 수 cd '-my-directory'없습니까?
OldBunny2800

@ oldbunny2800 사용해 보셨습니까?
nohillside

1
@ OldBunny2800 번호 따옴표는 쉘이 문자를 개별적으로 처리하지 못하게합니다. 하이픈으로 시작 하는 문자열은 해당 문자열이 셸에 표시되는 방식에 관계없이 인수 를 받는 명령에 의해 옵션으로 처리되거나 처리되지 않습니다 .
chepner

1
@patrix 나는 의견을 게시 한 직후에 다른 터미널 shenanigans에 의해 산만 해졌고 내 의견에 대해 잊어 버렸습니다. :) Chepner 아, 더 이해가 되네요.
OldBunny2800

답변:


20

이것은 작동해야합니다.

cd /path/to/-folderthatstartswithdash

편집 :

이 질문 에 따르면 이름을 입력하려는 경우에만 작동합니다.

cd -- -folderthatstartswithdash

5
--방법은 정답입니다 ... 파일 이름을 인수로 사용하고 경로를 완전히 규정 할 필요가없는 대부분의 표준 유틸리티에서 작동합니다.
Kaithar

--메소드는 인수 구문 분석을 "끄기"때문에 작동합니다.
Tony Williams

3
왜 "이름 만 입력하려는 경우"제한이 있습니까? 더 많은 인수가 필요하면 앞에 인수를 추가하십시오 --.
Federico Poloni

@FedericoPoloni 나는 당신이 전체 경로를 원하지 않는다면 이것을 사용할 수 있다고 말하고 있습니다. 다른 모든 인수는-앞에 와야합니다.
Tom Shen

19
cd ./-folder

일반적으로 여기에서 (그리고 다른 명령과 함께) 잘 작동합니다.


이 솔루션의 한 가지 좋은 점은 'cd'뿐만 아니라 모든 프로그램이나 명령과 함께 작동한다는 것입니다. "-"와 같은 특수한 동작을 갖는 명령이나 프로그램에 의존하여 후속 인수의 해석을 변경하지 않습니다.
래리 그 리츠

-5

따옴표 안에 이름을 넣으면 효과가 있습니다.


3
왜 그렇게 될까요? 유틸리티는 차이점을 어떻게 알 수 있습니까? 인용은 쉘에 의해 수행되며, 결국 유틸리티가받는 인수 배열은 어느 쪽이든 동일 합니다. 나는 당신의 솔루션을하지 않았 음을 인정하지만, 조금 나는 쉘에 대해 알고있는 것을에서, 그이 꽤 자명 한 것 같다 가능성이 할 수없는 일.
Jörg W Mittag

이것은 Windows IIRC에서 작동해야하며 가장 먼저 생각한 것이지만 Mac에서는 작동하지 않는다는 것을 확인할 수 있습니다.
Cullub

2
Windows에서 작동하는 경우 Windows의 명령 줄 모델이 완전히 어리 석고 일관성이 없기 때문입니다. 또는 Windows 명령이 -옵션 문자로 취급되지 않기 때문 입니다. 그러나 인용을 통해이 행동을 바꿀 수있는 방법은 없습니다.
R .. GitHub 중지 지원 얼음 얼음
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.