Ho avuto una buona ricerca nel mondo di Google per trovare un problema simile al mio, ma non riesco a trovare alcun esempio di persone che fanno cose al di fuori del loro FOR/F loops e quindi sono rassegnato a creare un nuovo thread.Qualcosa dopo il ciclo DOS FOR/F non in esecuzione
Sto usando un ciclo FOR/F per eseguire una gemma Ruby una volta per riga che trova in un file di riferimento, che fa perfettamente. Il problema è che quando ha finito di scorrere il suo file di riferimento ed eseguito il Ruby Gem la giusta quantità di volte, non completerà qualcos'altro nel file .CMD al di fuori del ciclo FOR/F.
Ecco il mio codice .CMD:
FOR /F "tokens=1,2,3 delims=," %%a in (c:\cygwin\usr\work\easy.lst) do (
c:\ruby191\bin\scrapitalist website -u http://www.website.com/%%a/%%c/%%b.html -o C:\cygwin\usr\autobets\work\%%b_%%c.easy
)
copy c:\cygwin\usr\work\*.easy c:\cygwin\usr\autobets\work\easy.imp
Il file easy.lst ha due linee di dati in essa contenuti.
Il ciclo funziona correttamente, l'esecuzione di Ruby Gem e la creazione di file * .easy come output, tuttavia, il comando COPY non viene mai eseguito. Posso sostituire la copia con un ECHO, o in realtà qualsiasi cosa, ma non verrà eseguita.
Non riesco a vedere cosa mi manca dalla sintassi FOR/F - qualsiasi idea fa capolino?
Grazie
Posso suggerire una shell di tipo UNIX? La sintassi è molto più potente e molto più sicura. Sembra che Cygwin sia già installato, quindi perché non usare solo la shell bash che viene fornita con esso? – tdammers
@tdammers è un buon suggerimento, ma è anche come suggerire la codifica in C# quando l'OP vuole assemblare, qualunque sia la ragione. –