Enviei muitos scripts de trabalho SLURM com limite de tempo de depuração (esqueci de alterar o tempo para a execução real). Agora todos eles são enviados ao mesmo tempo, então todos começam com o ID de tarefa 197xxxxx. Agora, eu posso fazer
squeue -u $USER | grep 197 | awk '{print $1}'
para imprimir os IDs de trabalho que desejo excluir. Mas como eu uso o comando scancel em todos esses IDs. A saída do comando shell acima seria semelhante
19726664
19726663
19726662
19726661
19726660
19726659
19726658
19726657
19726656
19726655
19726654
19726653
19726652
19726651
19726650
Verifique a documentação para
xargs
obter detalhes. Sescancel
aceitar vários IDs de trabalho (deveria), você pode omitir a-n 1
parte.Para cancelar todos os meus trabalhos slurm (omitindo os OP's
grep 197
), descobri que precisava podar a primeira linha da saída do squeue, que continha os títulos das colunas, também:Uma versão um pouco mais curta com apenas os números de trabalho impressos por
squeue
:Como esta é uma solução simplificada, você também pode fazer isso:
Isso omite as opções de formatação e, em vez disso, remove o cabeçalho com o
-h
sinalizador.Isso é o que eu geralmente uso:
cancelar todos os meus trabalhos:
cancelar por filtragem: ou seja, cancelar todos os trabalhos com um jobId que comece por 26699):