Z powodzeniem korzystam z tej komendy, która zmienia zmienną w pliku konfiguracyjnym, a następnie wykonuje skrypt w języku Python w pętli:
for((i=114;i<=255;i+=1)); do echo $i > numbers.txt;python DoMyScript.py; done
Ponieważ każda z nich DoMyScript.py
potrzebuje około 30 sekund, aby uruchomić się przed zakończeniem, chciałbym przenieść je w tło, podczas gdy następna będzie mogła się odrodzić.
Wypróbowałem to, co znam, dodając znak handlowe i jak poniżej:
for((i=114;i<=255;i+=1)); do echo $i > numbers.txt;python DoMyScript.py &; done
Powoduje to jednak następujący błąd:
-bash: błąd składni w pobliżu nieoczekiwanego tokena `; '
bash
command-line
process
bash-script
ljs.dev
źródło
źródło
numbers.txt
zawierające255
.Biorąc pod uwagę komentarz Stephane'a do odpowiedzi 1_CR , prawdopodobnie chcesz:
źródło
for
zakresu ... Oto, z czego jestem zadowolony w tej chwili:for((i=1;i<100;i+=1)); do echo $i > numbers.txt;sleep 3; python DoMyScript.py & done
Główny problem związany z uruchomieniem procesu w tle został rozwiązany.<=
w pierwotnym pytaniu, więc podany przez ciebie zakres był całkowicie odpowiedni na podstawie informacji, które podałem.Strać
;
:źródło