Ho uno script bash che assomiglia al seguente:
##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
Vorrei crearne un altro per il ciclo dopo il primo per continuare per altri 30. Ad esempio
##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
Vorrei che il primo set di lavori terminasse prima di iniziare il nuovo set. Ma a causa di nohupciò sembra che vengano eseguiti tutti contemporaneamente.
Ho nohupperché accedo in remoto al mio server e inizio i lavori lì e quindi chiudo la mia bash. C'è una soluzione alternativa?
waitintegrato.