2011-08-16 7 views
12

In un file batch Io uso la seguente sintassi per mappare un'unità di rete:file di Windows pipistrello: annullare NET USE

NET USE N: \\ UnServer \ somedirectory.

Sebbene funzioni correttamente, genera anche un errore se la lettera n è già utilizzata. È possibile sopprimere questo messaggio di errore?

Inoltre, c'è un modo per non mappare un'unità di rete?

Mi immagino qualcosa come:

NET UNUSE N:

risposta

17

Dopo

NET USE N: \\somserver\somedirectory 

da rimuovere semplicemente:

NET USE N: /DELETE 

di prova per un mapping esistente è possibile;

IF NOT EXIST N:\. GOTO BLABLA 
+0

grazie, questo mi sta facendo una domanda: 'Ci sono file aperti e/o ricerche di directory incomplete in sospeso sulla connessione a N :. È OK continuare a disconnettersi e forzarli a chiudersi? (S/N) [N]: 'questo può essere forzato a sì? – clamp

+0

Se ** è ** ok disconnetti prova 'ECHO Y | NET N:/DELETE' –

+3

che non funziona per me infatti, usa' net use N:/delete/y' –

2

è possibile rilevare se un drive è in uso eseguendo

net use N: 

si otterrà ritorno risultati diversi $? in PowerShell e %ERRORLEVEL% in batch.

Se mappato $? sarà True e %ERRORLEVEL% sarà 0

Per eliminare la mappatura, basta fare

net use N: /DELETE 
0

Il metodo più semplice è: SE non esiste N :. NET USE N: \ someserver \ somedirectory

Problemi correlati