Menggunakan perintah cd di baris perintah Windows, tidak dapat menavigasi ke D: \

226

Ini mungkin pertanyaan bodoh, dan saya pikir saya telah mencari di tempat lain untuk menemukan jawabannya ... Mungkin menjadi masalah jalur, tetapi ketika saya membuka baris perintah dan ketik dari C:\>:

cd D:\

Saya tidak bisa sampai ke drive D. Bahkan jika saya mengetik:

cd D:\<folder name>

The command.exekehendak auto-melengkapi line dengan tombol tab, sehingga tahu di mana aku di. Hanya tidak mencetak untuk menyaring hasilnya atau benar-benar membuat saya di sana. Masalah ini juga ada untuk drive jaringan.

Sekarang, jika saya menggunakan perintah chdir( cd) seperti ini:

chdir D: atau cd d:

Saya mendapatkan hasil cetak dari D:\perintah di bawah ini tetapi masih mengatakan saya di C:\.

Saya merasa seperti kehilangan sesuatu yang sederhana.

nicorellius
sumber
Saya telah menggunakan pushddi tempat cdcukup banyak di mana-mana karena berperilaku jauh lebih baik dalam situasi seperti ini.
Goyuix
5
Lihat jawaban ini " cd / d D: " superuser.com/a/135239/78897
Pacerier
1
Coba ini: cd / dd:
DevWL

Jawaban:

324

Kembali ke zaman DOS, ada "direktori saat ini" yang terpisah untuk setiap drive. cd D:\foldernamemengubah D: direktori saat ini ke nama pengguna yang ditentukan, tetapi tidak mengubah fakta bahwa Anda masih bekerja di C:drive.

Yang Anda inginkan sederhana:

D:

Di sini Anda dapat melihat cara kerja "pisahkan direktori saat ini untuk setiap drive":

C:\Users\coneslayer>e:

E:\>c:

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

C:\Users\coneslayer>e:

e:\Software>
pemain coneslayer
sumber
16
Dalam situasi "senjata tercepat di barat", pemenangnya adalah orang yang memberikan penjelasan terbaik. +1, dan saya menghapus jawaban serupa saya.
Gnoupi
2
Hapus milik saya juga. Tidak perlu untuk kekacauan tambahan.
th3dude
3
-1 a) Anda belum menunjukkan bahwa cd e:\softwaregaris tidak melakukan apa pun. Seolah-olah Anda terjebak perintah CD hantu di sana Mengapa? Untuk membuatnya berpikir Anda menggunakan CD padahal bukan? dan b) bagaimana mungkin Anda tidak menyebutkan /dmengaktifkan CD ke direktori tertentu pada drive yang berbeda? Dia memang mengatakan menggunakan perintah cd jadi sementara itu baik bahwa Anda menunjukkannya bagaimana hal itu dapat dilakukan tanpa perintah CD d:<ENTER>, Anda seharusnya menyebutkan untuk perintah CD juga cd /d d:ataucd /d d:\blah
barlop
3
@barlop cd E:\softwareTIDAK tidak melakukan apa-apa. Ini mengubah direktori sekarang dari partisi E ke softwarefolder, yang adalah apa yang ditunjukkan ketika akhirnya beralih ke partisi E dengan E:. Saran bagus dengan cd / d sekalipun.
miyalys
@miyalys poin menarik dan bagus
barlop
78

Hal melakukan pekerjaan, seperti perintah dirancang untuk bekerja.

Anda benar-benar tidak tahu bagaimana seharusnya itu berfungsi.

Anda tidak menggunakan program shell Unix atau Linux. The cdcommand di command interpreter Microsoft tidak berperilaku sebagai cdperintah dalam kerang seperti lakukan. Berperilaku agak berbeda. Secara khusus, ini tidak selalu mengubah direktori . Di shell Unix dan Linux, cdhanya pernah menetapkan direktori kerja. Dalam penerjemah perintah Microsoft, cdkadang-kadang bertanya. Tidak ada pwdperintah terpisah , begitu cdjuga dua pekerjaan.

Jika Anda tidak memberikan argumen, atau argumen yang hanya huruf kandar dan titik dua tanpa jalur, maka ia melaporkan direktori saat ini alih-alih mengubahnya . Jika Anda tidak memberikan argumen, itu melaporkan direktori saat ini dari drive saat ini dari proses penerjemah perintah. Jika Anda hanya memberikan huruf drive dan titik dua sebagai argumen, itu melaporkan direktori proses interpreter perintah saat ini dari drive itu. Setiap drive memiliki direktori sendiri saat ini di interpreter perintah. (Ini adalah fiksi yang dikelola oleh perpustakaan run-time untuk implementasi Microsoft dan beberapa vendor lainnya dari berbagai bahasa pemrograman. Win32 sendiri tidak bekerja seperti ini.)

Jadi ketika Anda memberikannya d:sebagai argumen, itu melaporkan direktori saat ini proses interpreter perintah pada drive D kepada Anda, yang kebetulan D:\. Jika Anda tidak memberikan argumen sama sekali, itu akan dilaporkan C:\kepada Anda.

Jika Anda ingin cdperintah selalu dalam mode set dan tidak pernah dalam mode kueri, Anda perlu menambahkan /Dopsi ke sana. Ini memaksa perintah untuk selalu berada dalam mode yang ditetapkan, dan juga memperluasnya sehingga itu mengubah drive saat ini serta mengubah direktori drive saat ini. (Dengan kata lain, ini berfungsi lebih seperti Win32 API yang mendasarinya sebenarnya.)

Jadi, misalnya, baris perintah

cd / dd:
akan mengubah direktori menjadi apa pun direktori saat ini pada drive D, dan juga mengubah drive saat ini ke drive D.

Jika Anda ingin mengubah drive proses interpreter perintah saat ini sebaliknya, cdperintahnya tidak jalan. Anda melakukannya dengan hanya mengetik huruf drive dan titik dua:

d:

Bacaan lebih lanjut

  • Perangkat Lunak JP (2011). Bantuan Online CD / CHDIR TCC.
  • Microsoft corporation (2001). Chdir (CD) . Referensi baris Perintah TechNet Windows XP A – Z.
JdeBP
sumber
3
Tidak sepenuhnya benar. Jika Anda melakukannya cd d:\ , ubah direktori kerja aktif d:. Jika Anda melakukannya d:\ setelah itu akan di d:\ . Jika Anda melakukan cd d:\something\somethingsesuatu tidak akan terjadi pada awalnya. Tetapi jika Anda melakukannya d:\ setelah itu lagi, jalan Anda akan menjadi d:\something\something"!
sinni800
4
Tidak ada yang bertentangan dengan apa yang tertulis di atas dengan cara apa pun, sinni800(selain dari Anda mendapatkan sintaks untuk mengubah drive saat ini salah, itu, tapi saya akan mengabaikan itu). Saya tidak memasukkan diskusi tentang apa yang terjadi ketika seseorang memberikan nama path dalam argumen karena (a) bukan itu pertanyaannya dan (b) itu dalam bacaan lebih lanjut.
JdeBP
6
Tidak, tidak. Akan salah untuk berbicara tentang partisi daripada drive di sini user unknown,. Sebagai permulaan, partisi tidak sama dengan volume, dan drive huruf memetakan ke volume, bukan partisi. Dan ketika seseorang berbicara pada tingkat abstraksi ini, huruf drive dan drive saat ini adalah istilah konvensional, seperti yang digunakan di sini, dalam bacaan lebih lanjut yang ditunjukkan, dan bahkan dalam cd /?teks bantuan.
JdeBP
2
Saya telah menggunakan perintah ini selama setidaknya 20 tahun dan tidak pernah tahu ini.
Chris Ballance
54

Takut ini salah. Memang benar dari zaman DOS, tetapi baris perintah pada Windows NT dan yang lebih baru bukanlah DOS. Di baris perintah yang semua orang gunakan hari ini, Anda memiliki / D switch. Switch / d akan mengubah direktori saat ini dari drive yang ditentukan DAN berubah ke direktori itu. Switch / d harus ditentukan sebelum path. Sebagai contoh:

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

perintah windows prompt cd

Multiverse IT
sumber
4
+1 karena saya mempelajari sesuatu yang baru, tetapi saya tidak berpikir bahwa apa pun yang saya tulis salah.
pemain coneslayer
3
Jawaban Anda juga benar, Multiverse IT, tetapi coneslayer tidak salah. Terima kasih atas usaha Anda. Saya belajar dua trik hebat tentang pertanyaan ini.
nicorellius
2
Dari sudut pandang saya "Apa yang Anda inginkan itu sederhana ... D:" tidak benar. Ya itu bekerja dan merupakan metode yang valid untuk mencapai tujuan, tetapi tidak, secara tegas mengatakan apa yang seharusnya ia inginkan. Selain itu, cara komentar diucapkan menyiratkan bahwa Anda tidak dapat menggunakan CD untuk melakukan ini - implikasinya tidak benar.
Multiverse IT
1
Masalah utamanya adalah "Saya tidak bisa sampai ke drive D.". Dengan demikian, jawaban lainnya benar. Solusi Anda hanya membutuhkan satu langkah lebih sedikit (yang bagus). Itu tidak membuat yang lain salah.
Gnoupi
1
Hmm, "apa yang seharusnya dia inginkan." Kedengarannya agak sombong ;-)
nicorellius
20

CD adalah singkatan dari C hange D irectory, dan bukan Change Drive. Jadi tidak akan berubah menjadi D: seperti itu. Untuk mencapai ini, Anda cukup mengetikkan huruf drive

misalnya

d:

Saya tidak tahu
sumber
16
cd / DD: mengubah drive dan direktori ...
Michael S.
Tapi d: adalah partisi, bukan drive.
pengguna tidak diketahui
1
@userunknown Di era Dos 1.0 ketika shell dirancang hanya ada floppy disk yang AFAIK tidak dapat dipartisi. Dukungan hardrive awal hanya untuk partisi utama (pertama) pada drive. Dukungan partisi yang diperluas tidak ditambahkan sampai nanti.
Dan Neely
Saya tidak melihat tag MS-DOS 1.0, atau 1.0 disebutkan. Mungkin Anda tidak dapat mempartisi drive dengan program MS-DOS, tetapi Anda dapat menginstal MS-DOS pada drive yang dipartisi. Saya kira MS-DOS tidak mendukung, dan tag ada di sana, karena banyak pengguna percaya bahwa cmd.exe dan MS-DOS berarti sama, yang merupakan kesalahan lain untuk diatasi. Apropos: MS-DOS 1.0 tidak pernah dipublikasikan.
pengguna tidak diketahui
1
@userunknown Keputusan desain berasal dari versi awal DOS. Mengubah perilaku akan merusak program yang lebih lama (lihat komentar Daniel Beck di bawah). PS; menurut Wikipedia MS DOS 1.x diterbitkan.
Dan Neely
9

Direktori yang berfungsi di cmd.exe dikelola volume-by-volumeberdasarkan; Direktori Kerja untuk C:drive berbeda dari direktori kerja untuk D:drive.

Ketika Anda hanya mengirimkan huruf drive cd, itu akan mencetak direktori kerja untuk drive yang ditentukan.

Dalam kasus Anda, direktori kerja D:drive adalah volume root itu sendiri D:\,.

Untuk mengubah volume dari C:menjadi D:cukup masukkan huruf drive:

C:\>D:
D:\>
Andrew Lambert
sumber
2
cd / DD: mengubah drive dan direktori ...
Michael S.
1
Partisi dipetakan ke huruf drive, dan hampir sama dengan drive. Anda juga dapat memetakan direktori atau berbagi ke drive, dan mereka berperilaku sama.
Marty Fried
8

Gunakan cd / DD: untuk melakukan ini. Anda juga dapat menentukan jalur.

Michael S.
sumber
5

Jika Anda ingin mengubah drive dalam prompt perintah DOS maka Anda cukup menulis:

[Drive Letter]:

Misalnya, jika Anda ingin pindah ke drive D: \ maka Anda cukup mengetik berikut ini di command prompt:

D:
Darsak
sumber
Anda mengubah partisi dengan [Drive Letter]:, percayalah atau coba!
pengguna tidak diketahui
Oh wow, itu membuat segalanya jadi jauh lebih mudah. Saya selalu lupa /djadi ini membuat beralih lebih cepat.
Mateen Ulhaq
2

pushdberfungsi bahkan ketika Anda harus pergi ke drive misalnya direktori D:\Tests\Logs.

Gunakan saja begitu:

pushd D:\Tests\Logs

Jika Anda ingin kembali ke penggunaan direktori sebelumnya popd:

C:\Users>pushd D:\Tests\Logs
D:\Tests\Logs>popd
C:\Users>
BladeMight
sumber
0

Saat Anda akan mencari opsi di bilah alat dan mencari cmd atau dengan memilih windows All command prompt perintah memilih maka dibutuhkan untuk beberapa command prompt lainnya. Alih-alih mencoba menekan tombol windows + R dan mencari cmd yang diperlukan untuk drive C:>. Dari sana Anda dapat menavigasi ke D:> atau di mana pun Anda membutuhkan

pengguna609712
sumber