-
1. Data: 2010-11-24 02:43:54
Temat: windows cmd
Od: Mariusz Marszałkowski <m...@g...com>
Hey
Jest jakiś sposób żeby komendy windows cmd odpalać równolegle?
Programy równolegle można odpalić tak:
start program_1.exe
start program_2.exe
itd
a jeśli chcę odpalić równolegle w pętli np. coś takiego:
program_1.exe arg_1 arg_2 < file_1.txt | program_2.exe > file_2.txt
To jak to zrobić?
Pozdrawiam
-
2. Data: 2010-11-24 18:33:51
Temat: Re: windows cmd
Od: "Grzegorz Niemirowski" <g...@p...onet.pl>
Mariusz Marszałkowski <m...@g...com> napisał(a):
> Hey
> Jest jakiś sposób żeby komendy windows cmd odpalać równolegle?
> Programy równolegle można odpalić tak:
> start program_1.exe
> start program_2.exe
> itd
> a jeśli chcę odpalić równolegle w pętli np. coś takiego:
> program_1.exe arg_1 arg_2 < file_1.txt | program_2.exe > file_2.txt
> To jak to zrobić?
> Pozdrawiam
A co, nie działa tak?
--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 21 days, 9 hours, 29 minutes and 49 seconds
-
3. Data: 2010-11-24 20:34:30
Temat: Re: windows cmd
Od: bobas <b...@o...pl>
Nie sprawdziłem tego ale pomysł mam taki:
Zainstaluj Cygwin.
(To łatwa sprawa domyślnie wybiera prawie wszystko co trzeba, resztę się
klika, tylko trzeba zwrócić uwagę i podać sensowny katalog plików
instalacji - aby potem (jakby trzeba coś dodać lub usunąć) nie ściągać
wszystkiego od początku).
Jak już będziesz miał Cygwin na dysku, to piszesz zwykły skrypt *.sh i
tam w pętli odpalasz polecenia:
program_1.exe arg_1 arg_2 < file_1.txt | program_2.exe > file_2.txt &
Z tym "&" na końcu, to wtedy polecenie będzie odpalane w odrębnej
powłoce zamiast sekwencyjnie. O ile mi wiadomo to powinno zadziałać bez
pudła.
-
4. Data: 2010-11-24 22:59:25
Temat: Re: windows cmd
Od: Mariusz Marszałkowski <m...@g...com>
On 24 Lis, 19:33, "Grzegorz Niemirowski" <g...@p...onet.pl>
wrote:
> A co, nie działa tak?
Tak nie dziala:
start program_1.exe arg_1 arg_2 < file_1.txt | program_2.exe >
file_2.txt
Pozdrawiam i dzieki wszystkim.
-
5. Data: 2010-11-24 23:47:24
Temat: Re: windows cmd
Od: Boguś <n...@i...net>
Dnia 24-11-2010 o 23:59:25 Mariusz Marszałkowski <m...@g...com>
napisał(a):
> Tak nie dziala:
>
> start program_1.exe arg_1 arg_2 < file_1.txt | program_2.exe >
> file_2.txt
start cmd /c program_1.exe arg_1 arg_2 < file_1.txt | program_2.exe >
file_2.txt
--
Boguś
-
6. Data: 2010-11-25 00:05:57
Temat: Re: windows cmd
Od: Mariusz Marszałkowski <m...@g...com>
On 25 Lis, 00:47, Boguś <n...@i...net> wrote:
> Dnia 24-11-2010 o 23:59:25 Mariusz Marszałkowski <m...@g...com>
> napisał(a):
>
> > Tak nie dziala:
>
> > start program_1.exe arg_1 arg_2 < file_1.txt | program_2.exe >
> > file_2.txt
>
> start cmd /c program_1.exe arg_1 arg_2 < file_1.txt | program_2.exe >
> file_2.txt
Zaraz sprawdzę, dzięki serdeczne :)
-
7. Data: 2010-11-25 00:14:31
Temat: Re: windows cmd
Od: Boguś <n...@i...net>
Dnia 25-11-2010 o 01:05:57 Mariusz Marszałkowski <m...@g...com>
napisa?(a):
> On 25 Lis, 00:47, Boguś <n...@i...net> wrote:
>> Dnia 24-11-2010 o 23:59:25 Mariusz Marszałkowski <m...@g...com>
>> napisał(a):
>>
>> > Tak nie dziala:
>>
>> > start program_1.exe arg_1 arg_2 < file_1.txt | program_2.exe >
>> > file_2.txt
>>
>> start cmd /c program_1.exe arg_1 arg_2 < file_1.txt | program_2.exe >
>> file_2.txt
>
> Zaraz sprawdzę, dzięki serdeczne :)
I jeszcze jedna uwaga. Prawdopodobnie trzeba będzie pokombinować z
cudzysłowami, żeby wszystko po cmd /c zostało potraktowane jako parametr.
Ew. polecenie zapisać do tymczasowego pliku BAT i ten plik odpalić.
--
Boguś
-
8. Data: 2010-11-25 00:22:58
Temat: Re: windows cmd
Od: Mariusz Marszałkowski <m...@g...com>
On 25 Lis, 01:14, Boguś <n...@i...net> wrote:
> Dnia 25-11-2010 o 01:05:57 Mariusz Marszałkowski <m...@g...com>
> napisa (a):
>
> > On 25 Lis, 00:47, Boguś <n...@i...net> wrote:
> >> Dnia 24-11-2010 o 23:59:25 Mariusz Marszałkowski <m...@g...com>
> >> napisał(a):
>
> >> > Tak nie dziala:
>
> >> > start program_1.exe arg_1 arg_2 < file_1.txt | program_2.exe >
> >> > file_2.txt
>
> >> start cmd /c program_1.exe arg_1 arg_2 < file_1.txt | program_2.exe >
> >> file_2.txt
>
> > Zaraz sprawdzę, dzięki serdeczne :)
>
> I jeszcze jedna uwaga. Prawdopodobnie trzeba będzie pokombinować z
> cudzysłowami, żeby wszystko po cmd /c zostało potraktowane jako parametr.
> Ew. polecenie zapisać do tymczasowego pliku BAT i ten plik odpalić.
Z plikami bat właśnie mam zrobione, to zbyt niewygodne.
Dzięki jeszcze raz.
-
9. Data: 2010-11-25 00:55:19
Temat: Re: windows cmd
Od: "Grzegorz Niemirowski" <g...@p...onet.pl>
Mariusz Marszałkowski <m...@g...com> napisał(a):
> On 24 Lis, 19:33, "Grzegorz Niemirowski" <g...@p...onet.pl>
> wrote:
>> A co, nie działa tak?
> Tak nie dziala:
> start program_1.exe arg_1 arg_2 < file_1.txt | program_2.exe >
> file_2.txt
> Pozdrawiam i dzieki wszystkim.
Racja, źle zrozumiałem. Sposób Bogusia jest OK. Co do cudzysłowów to będzie
dobrze, jeśli w nich znajdzie się właściwe polecenie, cmd /c nie powinno w
nich być. start ma taką przypadłość, że jeśli jego pierwszy parametr jest w
cudzysłowach to traktuje to jako tytuł okna a nie jako polecenie do
wykonania.
--
Grzegorz Niemirowski
http://www.grzegorz.net/
OE PowerTool i Outlook Express: http://www.grzegorz.net/oe/
Uptime: 21 days, 15 hours, 55 minutes and 35 seconds
-
10. Data: 2010-11-25 01:32:25
Temat: Re: windows cmd
Od: Mariusz Marszałkowski <m...@g...com>
On 25 Lis, 01:55, "Grzegorz Niemirowski" <g...@p...onet.pl>
wrote:
Już działa dobrze :)
for /L %%I IN (0,2,46) DO (
start /min cmd /c "rows.exe %%I 2 < testy.txt | program_beta.exe >
tmp%%I.tmp"
xsleep.exe program_beta.exe 6
)
xsleep.exe program_beta.exe 1
copy /B tmp*.tmp out.txt
sum_time.exe "#all_time =" < out.txt >> time.txt
pause
del *.tmp
del *.log
exit
- rows.exe wycina N wierszy począwszy od M
- xsleep.exe zawiesza wykonanie do póki w systemie jest N lub więcej
procesów
- sum_time.exe - wycina pomiary czasów wykonania i sume wpisuje do
time.txt
Tak to aż się chce testować na 6 rdzeniach równolegle :)
Dzięki