For example, I want to kill jobs with ids ranging from 7823111 to 7823118. One way to do it is of course to list all IDs after qdel, such as
$ qdel 7823111 7823112 7823113 7823114 7823115 7823116 7823117 7823118
You can also do this in an elegant way, using seq command to generate the sequence number:
$ echo `seq -f "%.0f" 7823111 7823118`
7823111 7823112 7823113 7823114 7823115 7823116 7823117 7823118
Note that if you are using job array (-t) to control jobs, then it's easier to kill list of jobs in the array. Here is what "man qdel" says:
-t array_range
The array_range argument is an integer id or a range of integers. Multiple ids or id ranges can be combined in a comma delimted list. Examples: -t 1-100 or -t 1,10,50-100
good one. there were no examples using range so it was not clear to me. I helped my case to delete some 100 jobs quickly.
ReplyDeleteqdel -u [user] can delete all queue tasks run by the same user. I find this helpful too.
ReplyDeleteqdel {17979..18028} is simpler
ReplyDeleteThanks! That helped me.
Deletethanks for this short one :)
ReplyDeleteyou can select jobs based on a variety of criteria using qselect and pipe them to qdel with xargs e.g.
ReplyDeleteqselect -u | xargs qdel
to delete all jobs of a given user, -s R selects jobs with the state running, see the qselect docs for more refined selections.
This comment has been removed by the author.
ReplyDelete