2013-06-14 4 views

risposta

27

in questo caso è necessario sfuggire alla> come questo

for /F %%F in ('dir /B %* 2^> nul') do (
+10

Microsoft utilizza uno stagista per implementare la shell di comandi e dobbiamo conviverci per il resto della nostra vita ... – bambams

-5

Credo che hai bisogno di uno spazio di delimitazione tra il "2" e ">". Senza quel delimitatore il mio output di test dir è ancora visualizzato sullo schermo. Inoltre, credo che inviando l'output del comando dir a null non restituiremo alcun dato per il set da elaborare.

+3

No. La modifica di '2>' a '2>' reindirizza STDOUT anziché STDERR, impedendo così l'elaborazione dell'elenco di directory attuale. Come correttamente sottolineato da @RGuggisberg, l'operatore di reindirizzamento deve essere scappato nel comando annidato. –