Miałem wesołe, dobre wyszukiwanie w świecie Google, aby znaleźć podobny problem do mojego, ale nie mogę znaleźć żadnych przykładów ludzi robiących rzeczy poza ich FOR/F pętli, więc zrezygnowałem z tworzenia nowego wątku.Wszystko po wykonaniu pętli DOS FOR/F
Używam pętli FOR/F do wykonania Gem Ruby raz w wierszu, który znajdzie w pliku referencyjnym, który doskonale działa. Problem polega na tym, że po zakończeniu przewijania pliku referencyjnego i wykonaniu Ruby Gem z odpowiednią ilością razy, nie zakończy on niczego więcej w pliku .CMD poza pętlą FOR/F.
Oto mój kod 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
Plik easy.lst ma dwa wiersze danych w niej zawartych.
Pętla działa dobrze, wykonując Klejnot Ruby i tworząc pliki * .easy jako wynik, jednak polecenie KOPIOWANIE nigdy nie zostanie wykonane. Mogę zastąpić kopię ECHO, lub w rzeczywistości cokolwiek, ale nie zostanie wykonana.
Nie widzę, czego brakuje mi w mojej składni FOR/F - czy pomysły pomysłów?
Dzięki
Czy mogę zaproponować powłokę w stylu UNIX? Składnia jest o wiele potężniejsza i dużo czystsza. Wygląda na to, że masz już zainstalowane cygwin, więc dlaczego nie po prostu użyć powłoki bash, która jest z nim dostępna? – tdammers
@tdammers to uczciwa sugestia, ale to także sugerowanie kodowania w języku C#, gdy OP chce zgromadzenia, bez względu na przyczynę. –