Просмотр пути UNC с помощью Windows CMD без привязки его к сетевому диску
226672
Andreas Grech
C:\> cd \\somewhere '\\somewhere' CMD does not support UNC paths as current directories.
Чтобы обойти это, я обычно сопоставляю этот каталог с сетевым диском, и тогда я могу легко получить к нему доступ из командной строки.
Но есть ли более простой способ обойти это?
какие окна вы используете? Если это Windows 7, то в вашей системе предустановлен PowerShell. Powershell поддерживает unc-paths и cmd-команды (за некоторыми исключениями).
wullxz 13 лет назад
12
Вы всегда можете перейти к пути unc через run.
Not Kyle stop stalking me 13 лет назад
0
@wullxz: ура, я не знал, что вы можете просматривать пути UNC с помощью PowerShell. @kyle: это действительно правильный ответ на мой вопрос :) Но я хочу получить к нему доступ из командной строки. Изменит мой вопрос, чтобы сделать это более понятным.
Andreas Grech 13 лет назад
1
Если ваша проблема заключается в том, что вам нужно работать только из командной строки, вы можете сопоставить сетевой диск с помощью команды «net»: net use x: \\ имя компьютера \ имя общего ресурса
Al Crowley 13 лет назад
0
@ Алистер Кроули: Да, я знаю, но я спрашиваю, есть ли более простой способ, который не включает в себя подключение сетевого диска.
Andreas Grech 13 лет назад
1
@ Андреас Греч: Я думал, что это, скорее всего, так, поэтому я поставил это как комментарий, а не как ответ.
Al Crowley 13 лет назад
0
Используйте PowerShell, и это работает
Kolob Canyon 7 лет назад
0
Связанный: [Как вы обрабатываете «CMD не поддерживает UNC-пути в качестве текущих каталогов»?] (Https://serverfault.com/q/50085/4276) из-за сбоя сервера
Cristian Ciupitu 6 лет назад
0
@wullxz Это заслуживает того, чтобы быть ответом. Посмотрите на ответы ниже; "ContextConsole Shell Extension" и "Git Bash" получают несколько голосов. Я думаю, что PowerShell лучше, чем сторонние решения.
Franklin Yu 6 лет назад
0
Если вы используете pushdи popdвместо cdвас не получит эту ошибку UNC.
pushd <UNC path>создаст временный виртуальный диск и залезет в него. popdудалит временный диск и вернет вас на путь, который вы указали при вводе pushd.
Пример:
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>
Использование `pushd` создает сопоставление диска с сетевым ресурсом, а затем изменяется на путь относительно общего ресурса, который он создает. `popd` отключает общий доступ.
Dov 12 лет назад
10
Это не работает для меня в Windows 10. `C: \ WINDOWS \ system32> pushd \\ some \ network \ path`` '' CMD не поддерживает UNC-пути в качестве текущих каталогов`
kayleeFrye_onDeck 7 лет назад
2
Это просто работает для меня в Windows 10, как странно. Я сделал `pushd \\ ServerName \ home \ dir \ dir2`.
Diziet 7 лет назад
1
Родной и элегантный, просто чудо. Работает на Windows 10.
WesternGun 7 лет назад
3
Есть ли хитрость, чтобы заставить его работать, когда учетные данные общего ресурса не совпадают с учетными данными пользователя компьютера?
Perkins 6 лет назад
0
работает отлично. и мне нужно проверить, как поместить такой каталог в Perl-скрипт.
Shicheng Guo 6 лет назад
0
@Perkins: я смог использовать runas.exe для запуска PowerShell от имени другого пользователя
Jacob Krall 6 лет назад
0
@JacobKrall Это сработало бы, если бы у другого пользователя были правильные учетные данные. Если это совершенно другой набор учетных данных, используйте cmdkey.
Perkins 6 лет назад
0
12
therube
«Расширение оболочки ContextConsole» (также называемое Open Command Prompt) говорит, что «может даже открывать каталоги из сетевых путей (UNC-пути)» (из окна проводника).
Эта программа самая классная!
afrazier 13 лет назад
3
Я в шоке от скриншота, он существует!
LiuYan 刘研 12 лет назад
1
не забудьте открыть диск //, а не отображенную версию. Это не удастся на карте.
twobob 7 лет назад
0
12
Dan
Для этого я использую Git Bash, так как он уже установлен.
В качестве дополнительного бонуса: Она также имеет лучшие цвета, давайте мне использовать ls, rmи т.д., и использует правильный слэш для дорожек. :П
Вы также можете использовать обратную косую черту, если экранируете их обратной косой чертой: `cd \\\\ server \\ share \\ subdirectory`
user121391 8 лет назад
0
Кроме того, если вы попытаетесь использовать завершение табуляции с именами компьютеров, оболочка может заблокироваться на некоторое время, пока имена не будут разрешены.
user121391 8 лет назад
0
у меня не работает
KansaiRobot 6 лет назад
0
7
Peter Evans
I also hit the UNC problem with C:\> cd \\somewhere in a C program. Found this page and learnt about the net command: net use x: \\computer name\share name and used it successfully! Thanks to all who post their experiences for others to learn from. :-)
Да, но использование `net use` отобразит это местоположение на сетевой диск, а это не то, что я хотел.
Andreas Grech 11 лет назад
1
@AndreasGrech, на самом деле `pushd` тоже так делает.
Pacerier 9 лет назад
1
Это хорошо работает в `Far` +` ConEmu`, в отличие от `pushd`.
Dzmitry Lahoda 8 лет назад
0
Есть значение реестра, которое вам нужно добавить, выйти из системы, снова войти в систему ... и теперь ваш cmd.exe поддерживает UNC-пути. Мне кажется, что вы все еще не можете перейти к пути, но вы можете использовать его в других командах, таких как dir, copy ...
Альтернативой может быть использование команды pushd, которая позволит вам переключиться на общий ресурс (я думаю, назначив ему временную букву диска) http://support.microsoft.com/kb/317379
Страницы, на которые вы ссылаетесь, кажутся пустыми ...
Pacerier 9 лет назад
0
Ссылки работают здесь. Вы пытались использовать https?
BigBlackDog 9 лет назад
0
-3
Salman
Вы можете использовать приложение HttpFileServer, оно поверх окон, очень легкое и очень простое в настройке, оно позволяет вам совместно использовать сетевую папку UNC (\ server \ share) с протоколом HTTP, а ссылку HTTP можно использовать на любой странице HTML
Не очень полезно для пользователя командной строки.
Isaac Rabinovitch 12 лет назад
8
Я согласен, что это удивительное программное обеспечение, но как его использовать, чтобы обойти тот факт, что оконное приложение CMD не обрабатывает UNC?
Jay Elston 6 лет назад
0