Jelajahi jalur UNC menggunakan Windows CMD tanpa memetakannya ke drive jaringan

154
C:\> cd \\somewhere
'\\somewhere'
CMD does not support UNC paths as current directories.

Apa yang biasanya saya lakukan untuk menyiasatinya adalah memetakan direktori itu ke drive jaringan dan kemudian saya dapat dengan mudah mengaksesnya dari command prompt.

Tetapi apakah ada cara yang lebih mudah untuk mengatasi hal ini?

Andreas Grech
sumber
12
windows mana yang Anda gunakan? Jika itu adalah Windows 7, Anda telah menginstal pra-instal pada sistem Anda. Powershell mendukung unc-paths dan cmd-command (dengan beberapa pengecualian).
wullxz
Anda selalu dapat menelusuri jalur unc melalui run.
Supercereal
1
@wullxz: Cheers, saya tidak tahu Anda bisa menelusuri jalur UNC dengan PowerShell. @kyle: Itu sebenarnya jawaban yang valid sesuai dengan pertanyaan saya :) Tapi saya ingin mengaksesnya dari lingkungan baris perintah. Akan memodifikasi pertanyaan saya untuk membuatnya lebih jelas.
Andreas Grech
Jika masalah Anda adalah bahwa Anda harus bekerja hanya dari baris perintah, Anda dapat memetakan drive jaringan dengan perintah 'net': net use x: \\ computer name \ share name
Al Crowley
1
@Aleister Crowley: Ya saya tahu, tapi saya bertanya apakah ada cara yang lebih mudah yang tidak melibatkan pemetaan drive jaringan.
Andreas Grech

Jawaban:

210

Jika Anda menggunakan pushddan popdbukannya cdAnda tidak akan mendapatkan kesalahan UNC itu.

pushd <UNC path>akan membuat drive virtual sementara dan masuk ke dalamnya.
popdakan menghapus drive sementara dan membawa Anda kembali ke jalan Anda ketika Anda memasukkan pushd.

Contoh:

C:\a\local\path> pushd \\network_host\a\network\path

U:\a\network\path> REM a temporary U: virtual drive has been created

U:\a\network\path> popd

C:\a\local\path> REM the U: drive has been deleted

C:\a\local\path>
evanmcdonnal
sumber
13
Menggunakan pushdmenciptakan pemetaan drive untuk berbagi jaringan dan kemudian berubah menjadi jalur relatif terhadap berbagi yang dibuatnya. popdmemutus pembagian.
Dov
2
Ini tidak berfungsi untuk saya di Windows 10.C:\WINDOWS\system32>pushd \\some\network\path ' ' CMD does not support UNC paths as current directories.
kayleeFrye_onDeck
1
Itu hanya bekerja untuk saya di Windows 10, betapa anehnya. Saya lakukan pushd \\ServerName\home\dir\dir2.
Diziet
3
Asli dan elegan, hanya sebuah keajaiban. Berfungsi untuk Windows 10.
WesternGun
Apakah ada trik untuk membuatnya berfungsi ketika kredensial berbagi tidak cocok dengan kredensial pengguna mesin?
Perkins
15

Saya menggunakan Git Bash untuk melakukan ini, karena saya sudah menginstalnya.

masukkan deskripsi gambar di sini

Sebagai bonus tambahan:
Ini juga memiliki warna yang lebih baik, mari saya menggunakan ls, rm, dll, dan menggunakan garis miring yang benar untuk jalur. : P

Dan
sumber
Anda juga dapat menggunakan backslashes jika Anda menghindarinya dengan backslashes:cd \\\\server\\share\\subdirectory
user121391
1
Juga, jika Anda mencoba menggunakan pelengkapan tab dengan nama komputer, shell mungkin terkunci untuk beberapa waktu hingga nama-nama tersebut diselesaikan.
user121391
itu tidak bekerja untuk saya
KansaiRobot
12

Kliu's "ContextConsole Shell Extension" (alias Open Command Prompt) mengatakannya, "bahkan dapat membuka direktori dari jalur jaringan (jalur UNC)" (dari jendela Explorer).

http://code.kliu.org/cmdopen/

masukkan deskripsi gambar di sini

therube
sumber
3
Program ini sangat luar biasa!
Afrazier
1
Saya terkejut dengan tangkapan layar itu, itu ada!
LiuYan 刘 研
ingatlah untuk membuka // drive dan bukan versi yang dipetakan. Ini akan gagal dipetakan.
twobob
8

Saya juga mengalami masalah dengan UNC C:\> cd \\somewheredalam program C. Temukan halaman ini dan pelajari tentang netperintahnya: net use x: \\computer name\share namedan gunakan dengan sukses! Terima kasih kepada semua yang memposting pengalaman mereka untuk dipelajari orang lain. :-)

Peter Evans
sumber
1
Ya, tetapi menggunakan net useakan memetakan lokasi itu ke drive jaringan dan bukan itu yang saya inginkan.
Andreas Grech
2
@ AndreasGrech, Sebenarnya pushdmelakukan itu juga.
Pacerier
Ini berfungsi dengan baik di Far+ ConEmu, tidak seperti pushd.
Dzmitry Lahoda
@Pacerier Tapi pushdsecara otomatis memilih huruf drive dan memutus drive jaringan ketika tidak diperlukan lagi (setelah popdatau exit).
Martin
4

Jika Anda menggunakan XP, Anda dapat melihat situs ini http://support.microsoft.com/kb/156276

Ada nilai registri yang perlu Anda tambahkan, logout, masuk lagi ... dan sekarang cmd.exe Anda mendukung UNC-Paths. Sepertinya saya bahwa Anda masih tidak dapat cd ke jalan, tetapi Anda dapat menggunakannya dalam perintah lain seperti dir, salin ...

Alternatif mungkin menggunakan perintah pushd, yang akan memungkinkan Anda beralih ke berbagi (saya kira dengan menetapkannya huruf drive sementara) http://support.microsoft.com/kb/317379

BigBlackDog
sumber
Halaman yang Anda
tautkan
Tautan berfungsi di sini. Sudahkah Anda mencoba menggunakan https?
BigBlackDog
-3

Anda dapat menggunakan aplikasi HttpFileServer, lebih dari windows, sangat ringan dan sangat mudah dikonfigurasi, memungkinkan Anda untuk berbagi folder jaringan UNC (\ server \ share) dengan protokol HTTP dan tautan HTTP dapat digunakan di halaman HTML apa pun

http://www.rejetto.com/hfs/

itu luar biasa

Salman
sumber
8
Tidak terlalu berguna bagi pengguna baris perintah.
Isaac Rabinovitch
Saya setuju bahwa ini adalah perangkat lunak yang luar biasa, tetapi bagaimana ini bisa digunakan untuk menyiasati kenyataan bahwa aplikasi jendela CMD tidak menangani UNC?
Jay Elston