sviluppo-web-qa.it

Come gestite "CMD non supporta i percorsi UNC come directory correnti"?

Sto tentando di cambiare le directory in un file server come:

cd \\someServer\\someStuff\

Tuttavia, viene visualizzato il seguente errore:

CMD non supporta i percorsi UNC come directory correnti

Quali sono le mie opzioni per navigare in quella directory?

25
Ray Vega

Se stai pensando di copiarlo, è sempre utile conoscere i comandi pushd e popd. A volte non puoi essere sicuro di quali lettere di unità siano già utilizzate sul computer su cui verrà eseguito lo script e devi semplicemente prendere la successiva lettera di unità disponibile. Da Net Use ti richiederà di specificare l'unità, puoi semplicemente usare pushd \\server\folder e poi popd quando hai finito.

34
pk.

In alternativa, è possibile impostare Shell su PowerShell . Ha il supporto completo per i percorsi UNC.

15
Berzemus

Puoi usare Net Use per mappare un'unità di rete su un percorso UNC e quindi passare all'unità mappata.

11
Sam Cogan
2
Daniel

Questo ha funzionato per me in Win8x64:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Command Processor]
"DisableUNCCheck"=dword:00000001

Dovresti essere in grado di farlo anche in HKCU, assicurati di disconnetterti e riconnetterti.

1
JohnZaj

Oltre a mappare esplicitamente un'unità in modo che cmd possa far fronte, che potrebbe essere necessario anche per altre utility, puoi anche provare un comando alternativo Shell come PowerShell.

1
David Spillett

come per @pk usa pushd & popd, ecco un esempio.

utilizzare pushd per creare un'unità virtuale temporanea e, al termine, eseguire un popd per eliminare l'unità virtuale temporanea

: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
1
AquaAlex

Ehi, eccone uno da provare ...

Vai a questa pagina e cerca "consenti percorso unc" ... funzionerà?

C'è più background qui e qui

0

Hai una barra rovesciata extra nel tuo UNC. La doppia barra rovesciata PRIMA di "someServer" IS appropriata. La doppia barra rovesciata prima di "someStuff" dovrebbe essere una barra rovesciata singola, no?

Allora prova

\\ unserver\someStuff \"

NON

\\ \\ unserver someStuff \"

0
HumbleStudent

Il comando di giunzione non funzionerebbe qui?

0