Ho inviato molti script di lavoro SLURM con limite di tempo di debug (ho dimenticato di modificare il tempo per l'esecuzione effettiva). Ora vengono inviati tutti contemporaneamente, quindi iniziano tutti con l'ID lavoro 197xxxxx. Ora posso farlo
squeue -u $USER | grep 197 | awk '{print $1}'
per stampare gli ID lavoro che voglio eliminare. Ma come posso usare il comando scancel su tutti questi ID. L'output del comando della shell precedente sarebbe simile a
19726664
19726663
19726662
19726661
19726660
19726659
19726658
19726657
19726656
19726655
19726654
19726653
19726652
19726651
19726650
Risposta accettata:
squeue -u $USER | grep 197 | awk '{print $1}' | xargs -n 1 scancel
Controlla la documentazione per xargs
per dettagli. Se scancel
accetta più ID lavoro (dovrebbe), puoi omettere -n 1
parte.