Windows komut satırında cd komutunu kullanarak D: \ konumuna gidemezsiniz.


226

Bu aptalca bir soru olabilir ve sanırım cevabı bulmak için başka bir yere baktım ... Bir yol sorunu olabilir, ancak komut satırını açtığımda ve şunu yazın C:\>:

cd D:\

D sürücüsüne gidemiyorum. Yazsam bile:

cd D:\<folder name>

command.exeİrade sekme tuşuyla hattını otomatik olarak tamamlamak, bu yüzden de değilim nerede biliyor. Sadece sonucu taramak için basmıyor ya da beni oraya götürüyor. Bu sorun ağ sürücüleri için de var.

Şimdi, chdir( cd) komutunu bu şekilde kullanırsam:

chdir D: veya cd d:

D:\Aşağıdaki komutun çıktısını aldım ama hala içinde olduğumu söylüyor C:\.

Basit bir şeyi özlüyorum gibi hissediyorum.


Böyle durumlarda çok daha iyi davrandığı için hemen hemen her yerde pushdyerini kullanıyorum cd.
Goyuix,

5
Bu cevabı gör " cd / d D: " superuser.com/a/135239/78897
Pacerier

1
Bunu dene: cd / dd:
DevWL

Yanıtlar:


324

DOS günlerine geri dönersek, her sürücü için ayrı bir "geçerli dizin" var. cd D:\foldernameD: 'nin geçerli dizinini belirtilen kat adına değiştirir, ancak hala C:sürücüde çalıştığınız gerçeğini değiştirmez .

İstediğin basit:

D:

Burada "her sürücü için ayrı geçerli dizini" işinin nasıl çalıştığını görebilirsiniz:

C:\Users\coneslayer>e:

E:\>c:

C:\Users\coneslayer>cd e:\software

C:\Users\coneslayer>e:

e:\Software>

16
"Batıdaki en hızlı silah" durumunda, kazanan en iyi açıklamayı yapandır. +1 ve benzer cevabımı sildim.
Gnoupi

2
Benimki de silindi. Fazladan karmaşaya gerek yok.
th3dude

3
-1 a) cd e:\softwareçizginin hiçbir şey yapmadığını belirtmediniz . Sanki oraya bir hayalet CD komutu soktun Neden? Olmadığında CD kullandığını düşündürmek için mi? ve b) /dfarklı bir sürücüdeki CD'leri belirli bir dizine aktive etmekten nasıl bahsedemezsiniz? CD komutunu kullanarak demişti ki , CD komutu olmadan nasıl yapılabileceğini göstermiş d:<ENTER>olsanız iyi olur. CD komutu cd /d d:dacd /d d:\blah
barlop

3
@barlop cd E:\softwareHiçbir şey yapmaz. Mevcut dizini değiştirir E bölümünün için softwarenihayet ile e bölümü geçerken gösterdi budur klasörde, E:. Yine de cd / d ile iyi bir öneri.
miyalys 21:16

@miyalys ilginç ve harika bir nokta
barlop

78

İşe yaradı , komut çalışmak için tasarlandı.

Gerçekten nasıl çalışması gerektiğini bilmiyorsun.

Unix veya Linux kabuk programı kullanmıyorsunuz. cdOlarak Microsoft'un komut yorumlayıcı komut davranmaz cdböyle kabukları içinde komutlar do. Biraz farklı davranıyor. Özellikle, her zaman dizini değiştirmez . Unix ve Linux kabuklarında, cdyalnızca çalışma dizinini ayarlar. Microsoft'un komut yorumlayıcısında cdbazen sorgular. Ayrı bir pwdkomut yok , yani cdiki iş var.

Argüman vermezseniz veya sadece sürücü harfi ve yolu olmayan bir sütun olan bir argüman verirseniz, o zaman onu değiştirmek yerine geçerli dizini bildirir . Argüman vermezseniz, komut yorumlayıcı işleminin o anki sürücüsünün geçerli dizinini bildirir. Yalnızca sürücü harfini ve iki nokta üst üste bir argüman verirseniz, komut yorumlayıcı işleminin o sürücünün geçerli dizinini bildirir. Her sürücünün komut yorumlayıcısında kendi geçerli dizini vardır. (Bu, Microsoft'un ve diğer birkaç satıcının çeşitli programlama dilleri için yaptığı uygulamaların çalışma zamanı kitaplıkları tarafından sağlanan bir kurgudur. Win32, bu şekilde çalışmaz.)

Bu yüzden d:bir argüman olarak verdiğinizde , komut yorumlayıcı işleminin 'D sürücüsündeki geçerli dizini size olduğu bildirildi D:\. Eğer hiç tartışmasaydın, C:\sana rapor ederdi .

İsterseniz cdkomut için her zaman set modunda olmanız ve sorgu modunda asla eklemek gerekir /Dbuna seçeneği. Bu, komutu her zaman ayarlanmış modda olmaya zorlar ve ayrıca sürücünün geçerli dizinini değiştirmenin yanı sıra geçerli sürücüyü de değiştirecek şekilde genişletir. (Başka bir deyişle, aslında temel olan Win32 API'sinin yaptığı gibi çalışır.)

Yani, örneğin, komut satırı

cd / gg:
dizini D sürücüsündeki geçerli dizine göre değiştirir ve aynı zamanda D sürücüsünü de geçerli olarak değiştirir.

Komut yorumlayıcı işlemini 'geçerli sürücüyü değiştirmek istiyorsanız, aksi halde cdkomut bu şekilde olmaz. Bunu sadece sürücü harfini ve iki nokta işaretini yazarak yapabilirsiniz:

D:

daha fazla okuma

  • JP Yazılım (2011). CD / CHDIR TCC Çevrimiçi Yardım.
  • Microsoft şirketi (2001). Chdir (CD) . TechNet Windows XP Komut satırı referansı A – Z.


3
Tamamen doğru değil. Bunu yaparsanız cd d:\ çalışma dizinini değiştirir d:. Daha d:\ sonra yaparsanız olacak d:\ . Eğer yaparsan cd d:\something\somethingilk başta hiçbir şey olmayacak. Fakat d:\ daha sonra tekrar yaparsanız , yolunuz olacak d:\something\something"!
sinni800,

4
Bunların hiçbiri yukarıda yazılanlarla hiçbir şekilde çelişmiyor sinni800(mevcut sürücüyü değiştirmek için sözdizimini yanlış kullanmaktan başka bir şey değil, ama bunu görmezden geleceğim). Tartışmada kişi bir yol adı sağladığında ne olacağını tartışmayı dahil etmedim, çünkü (a) sorunun konusu bu değil ve (b) ilerideki okumalarda.
JdeBP

6
Hayır, değiliz. Buradaki sürücüler yerine bölümlerden bahsetmek yanlış olur user unknown. Yeni başlayanlar için, bölümler birimlerle aynı değildir ve harfleri bölümlerle değil birimlerle eşleştirir. Biri bu soyutlama seviyesinde konuşurken, sürücü harfi ve mevcut sürücü burada kullanılan, daha sonraki okumalarda ve hatta cd /?yardım metninde kullanılan geleneksel terimlerdir .
JdeBP

2
Bu emri en az 20 yıl boyunca kullandım ve bunu hiç bilmiyordum.
Chris Ballance

54

Korkarım bu yanlış. DOS günlerinden doğrudur, ancak Windows NT ve sonraki sürümlerinde komut satırı DOS değildir. Bugün herkesin kullandığı komut satırında / D anahtarına sahipsiniz. / D anahtarı, belirtilen sürücünün geçerli dizinini değiştirir ve bu dizine geçer. / D anahtarı yoldan önce belirtilmelidir. Örneğin:

C:\> cd /d D:\foo\bar\
D:\foo\bar\>

Windows komut istemi cd


4
+1 çünkü yeni bir şey öğrendim, ancak yazdığım hiçbir şeyin yanlış olduğunu sanmıyorum.
coneslayer,

3
Cevabınız da doğru Multiverse BT, ancak coneslayer yanlış değildi. Çabaların için teşekkürler. Bu konuda iki harika numara öğrendim.
nicorellius

2
Benim açımdan "İstediğin şey basit ... D:" yanlıştır. Evet işe yarar ve hedefe ulaşmak için geçerli bir yöntemdir, ancak kesinlikle ne istediği hakkında konuşmuyor. Ek olarak, yorumun ifadesi, CD'yi kullanamayacağınız anlamına gelir - bu yanlış.
Multiverse BT,

1
Asıl meselesi "D sürücüsüne gidemiyorum." Bu nedenle, diğer cevap doğrudur. Çözümünüz sadece bir adım daha az sürer (ki bu iyidir). Diğerini yanlış yapmaz.
Gnoupi

1
Hmm, "ne yapması gerekiyor?" Oldukça varsayımsal ;-)
nicorellius,

20

CD açılımı C hange D irectory ve Drive'ı değiştirin değil. Böylece D değişmezdi: böyle. Bunu başarmak için sürücü harfini yazmanız gerekir.

Örneğin

D:


16
cd / DD: sürücüleri ve dizinleri değiştirir ...
Michael S.

Ancak d: bir bölümdür, bir sürücü değil.
kullanıcı bilinmeyen

1
@ userunknown Dos 1.0 döneminde, kabuk tasarlandığı zaman sadece AFAIK'in bölünemediği disketler vardı. İlk sabit sürücü desteği, yalnızca sürücüdeki birincil (ilk) bölüm içindi. Genişletilmiş bölüm desteği daha sonra eklenmedi.
Dan Neely

Bir MS-DOS 1.0 etiketi görmedim, ne de 1.0 belirtilen. Belki bir sürücüyü MS-DOS programlarıyla bölümleyemezsiniz, ancak bölümlenmiş bir sürücüye bir MS-DOS yükleyebilirsiniz. Sanırım MS-DOS desteksiz ve etiket orada, çünkü birçok kullanıcı cmd.exe ve MS-DOS'un aynı anlama geldiğine inanıyor. Apropos: MS-DOS 1.0 hiç yayınlanmadı.
kullanıcı bilinmeyen

1
@ userunknown Tasarım kararları DOS'un ilk sürümlerine dayanıyor. Davranışı değiştirmek eski programları bozabilir (aşağıdaki Daniel Beck'in yorumuna bakınız). PS; Wikipedia'ya göre MS DOS 1.x yayımlandı.
Dan Neely

9

Cmd.exe içindeki çalışma dizini bir volume-by-volumetemelde tutulur ; C:sürücünün Çalışma Dizini, sürücünün çalışma dizininden farklıdır D:.

Yalnızca bir sürücü harfini cdilettiğinizde, belirtilen sürücünün çalışma dizinini yazdırır.

Sizin durumunuzda, D:sürücünün çalışma dizini birim kökünün kendisidir D:\.

Dan hacimleri değiştirmek için C:için D:basitçe sürücü harfini girin:

C:\>D:
D:\>

2
cd / DD: sürücüleri ve dizinleri değiştirir ...
Michael S.

1
Bölümler bir sürücü harfine eşlenir ve neredeyse bir sürücü ile aynıdır. Ayrıca bir dizini eşleştirebilir veya bir sürücüyle paylaşabilirsiniz; aynı şekilde davranırlar.
Marty Fried

8

Kullanım cd / DD: Bunu yapmak için. Ayrıca yolları da belirleyebilirsiniz.


5

DOS komut isteminde sürücüyü değiştirmek istiyorsanız yazmanız yeterlidir:

[Drive Letter]:

Örneğin, D: \ sürücüsüne geçmek istiyorsanız, aşağıdakileri bir komut istemine yazmanız yeterlidir:

D:

Bölmeyi değiştir [Drive Letter]:, inan ya da test et!
kullanıcı bilinmeyen

Vay canına, bu işleri çok daha kolay hale getiriyor. Bunu her zaman unutuyorum, /dbu da geçişi çok daha hızlı hale getiriyor.
Mateen Ulhaq

2

pushdÖrneğin alt dizini sürmeniz gerektiğinde bile çalışır D:\Tests\Logs.

Sadece öyle kullanın:

pushd D:\Tests\Logs

Önceki dizine geri dönmek istiyorsanız, kullanın popd:

C:\Users>pushd D:\Tests\Logs
D:\Tests\Logs>popd
C:\Users>

0

Araç çubuğundaki seçeneği arayarak cmd'yi arayarak ya da pencereleri seçerek Tüm uygulama komut komut istemini seçerek, diğer bazı komut istemlerine götürür. Bunun yerine windows + R düğmesine basmayı deneyin ve cmd'yi aramayı C:> sürücüsüne götürün. Oradan D:> ya da ihtiyacınız olan her yere gidebilirsiniz

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.