У мене є сценарій bash, який виглядає наступним чином:
##script
#!/bin/bash
rm data*
rm logfile*
for i in {1..30}
do
## append a & if you want to run it parallel;
nohup Rscript --vanilla main.R 10 100 $i &> logfile"$i" &
done
Я хотів би створити ще один цикл після першого, щоб продовжити ще 30. Наприклад
##script
#!/bin/bash
rm data*
rm logfile*
for i in {1..30}
do
## append a & if you want to run it parallel;
nohup Rscript --vanilla main.R 10 100 $i &> logfile"$i" &
for i in {31..60}
do
## append a & if you want to run it parallel;
nohup Rscript --vanilla main.R 10 100 $i &> logfile"$i" &
done
Я хотів би, щоб перший набір робіт закінчився перед початком нового набору. Але через nohup
це здається, що всі вони працюють одночасно.
У мене є те, nohup
що я віддалено входжу на свій сервер і запускаю там роботи, а потім закриваю баш. Чи є альтернативне рішення?
wait
вбудованого.