“-” (eksi) ile başlayan bir isme sahip bir dizine nasıl cd yapılır?


10

İsimlerin "-" ile başladığı bazı klasörlerimiz var. Bunları terminal ile girmeye çalışırsam cd, "-" seçeneğini bir seçenek olarak yorumlar. Bunu nasıl başarabilirim?


1
Dizin / klasör adlarında bu tür karakterlerden kaçınmak akıllıca olacaktır.
Mindwin

Sadece yapamaz cd '-my-directory'mısın?
OldBunny2800

@ oldbunny2800 Bunu denedin mi?
nohillside

1
Alıntılar kabuğun karakterleri ayrı ayrı ele almasını engeller; tirelerle başlayan dizeler, bu dizelerin kabuğa nasıl sunulduğuna bakılmaksızın, bağımsız değişkenleri alan komut tarafından seçenekler (ya da değil) olarak ele alınır .
Mart'ta chepner

1
@ patrix Yorum gönderdikten hemen sonra yaptım, sonra diğer terminal shenanigans tarafından dikkati dağıldı, sonra yorumumu unuttum. :) Chepner ohhh, bu daha mantıklı.
OldBunny2800

Yanıtlar:


20

Bu sadece işe yaramalıdır:

cd /path/to/-folderthatstartswithdash

DÜZENLE :

Bu soruya göre , sadece adı girmek istiyorsanız bu işe yarar:

cd -- -folderthatstartswithdash

5
--Yöntem Doğru cevap ... bir argüman olarak bir dosya adı kabul etmek ve tam yolunu nitelemek zorunda kaydeder çoğu standart ekipmana sahip çalışacaktır.
Kaithar

--Yöntem argümanı ayrıştırma o "kapalı dönüşler" olarak çalışmaktadır.
Tony Williams

3
"Yalnızca adı girmek istiyorsanız" neden kısıtlama? Daha fazla argümana ihtiyacınız varsa, onları önce koyun --.
Federico Poloni

@FedericoPoloni Sadece tam yolu istemiyorsanız bunu kullanabilirsiniz. Diğer tüm argümanlar -.
Tom Shen

19
cd ./-folder

genellikle burada oldukça iyi çalışır (ve diğer komutlarla da)


Bu çözüm hakkında güzel bir şey, sadece 'cd' ile değil, herhangi bir program veya komutla çalışmasıdır; sonraki argümanların yorumunu değiştirmek için "-" gibi özel bir davranışa sahip olan komuta veya programa bağlı değildir.
Larry Gritz

-5

Adı tırnak içine almak işe yaramalıdır.


3
Neden işe yarar ki? Yardımcı program farkı nasıl bilecek? Alıntılama kabuk tarafından yapılır, sonuçta, yardımcı programın aldığı arguments dizisi her iki şekilde de aynı olacaktır . Ben senin çözüm deneyin vermedi itiraf, ama biraz ben kabukları hakkında bildiklerini dan, o bu oldukça aşikar görünüyor muhtemelen olamaz çalışır.
Jörg W Mittag

Bu, Windows IIRC'de çalışmalı ve ilk önce düşündüğüm şeydi, ancak mac'ta çalışmadığını doğrulayabilirim.
Cullub

2
Windows üzerinde çalışıyorsa, bunun nedeni yalnızca Windows'un komut satırı modelinin tamamen saçma ve tutarsız olmasıdır. Ya da sadece Windows komutlarının -bir seçenek karakteri olarak işlemediği için. Ancak alıntı yapmanın bu davranışı değiştirebilmesinin bir yolu yoktur.
R .. GitHub BUZA YARDIMCI DURDUR
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.