Я пытаюсь изменить каталоги на файловый сервер, такой как:
cd \\someServer\\someStuff\
Однако я получаю следующую ошибку:
CMD не поддерживает пути UNC как текущие каталоги
Какие есть варианты для перехода в этот каталог?
Я пытаюсь изменить каталоги на файловый сервер, такой как:
cd \\someServer\\someStuff\
Однако я получаю следующую ошибку:
CMD не поддерживает пути UNC как текущие каталоги
Какие есть варианты для перехода в этот каталог?
Ответы:
Если вы рассматриваете сценарии его, это всегда полезно узнать о pushd
и popd
командах. Иногда вы не можете быть уверены, какие буквы дисков уже используются на компьютере, на котором будет запускаться скрипт, и вам просто нужно взять следующую доступную букву диска. Поскольку net use
вам потребуется указать диск, вы можете просто использовать, pushd \\server\folder
а затем, popd
когда вы закончите.
popd
?
Или вы можете переключиться на PowerShell . Он имеет полную поддержку путей UNC.
Вы можете использовать net use
для сопоставления сетевого диска путь UNC, а затем перейдите к подключенному диску.
Чуть более длинное объяснение pushd здесь: http://shortfastcode.blogspot.com/2010/05/how-to-deal-with-cmd-does-not-support.html
Помимо явного сопоставления диска, чтобы он cmd
мог справиться, что может понадобиться и другим утилитам, вы также можете попробовать альтернативную командную оболочку, например PowerShell.
согласно @pk используйте pushd & popd, вот пример.
используйте pushd для создания временного виртуального диска и после этого выполните команду popd для удаления временного виртуального диска
:selectFolder
REM Confirm which Folder structure
set /p location="Delete files for which QA environment: (P)retoria, (C)ape, (L)uanda or (Q)uit? (C/L/P/Q)"
REM I option allows for upper and lower case
if /I "%location%"=="C" set folder="\\Tfwcqa\tfwcqa\EORDERS"
if /I "%location%"=="L" set folder="\\Tfluaqa\tfluaqa\EORDERS"
if /I "%location%"=="P" set folder="\\Tfptaqa\tfptaqa\EORDERS"
if /I "%location%"=="Q" goto endBatch
REM you can not cd to a network drive so we use pushd to create a temporary virtual drive
REM cd /d %folder%
pushd %folder%
DIR /S
REM popd deletes the temporary virtual drive
popd
Не сработает ли здесь команда перехода ?
Эй, вот один, чтобы попробовать ...
Перейдите на эту страницу и найдите «allow unc path» ... это будет работать?