83

I am an absolute beginner with Ubuntu and I appear to have a long queue of documents in my H.P. 840C printer.

5 Answers 5

131

The question was how to kill all jobs. The simple way to kill all jobs:

lprm -

The complicated linux old-school way is below:

Command line:

lpstat -o

to view outstanding print jobs.

cancel -a {printer}

to cancel ALL jobs or ...

cancel {printerjobid}

to cancel 1 job.


man page cancel

5
  • MAGIC : ) Guys who aren't having success, step 2 above? The readout from lpstat -o should look something like <yourusername_printername>. Just type that verbatim into {printer} in step 2. Worked fine in Ubuntu 15.04. Tnx Rinzwind :)
    – Manuel
    Dec 5, 2015 at 6:46
  • Funny, this works very well, but not when using gnome-printers gui. Too bad! Oct 31, 2016 at 6:57
  • @Gerstrong do you get a notice? Cuz this is totally outside of gnome-printers scope. Commandline always wins here ;)
    – Rinzwind
    Oct 31, 2016 at 7:37
  • No, notice at all, no reaction. The jobs stays there. Command Line in contrast removes it. Oct 31, 2016 at 17:48
  • Likely you need sudo from the gui.
    – Rinzwind
    Oct 31, 2016 at 17:49
25

Either

  1. Use the printer dialog: type "Printers" in the dash and navigate to the printer
  2. Use the CUPS web interface: point your browser at http://localhost:631/jobs/ and proceed from there
  3. Use the command line interface: use lpq to see jobs, lprm to remove. Refer to man lprm for more information.
2
  • Is there something like lprm * that will cancel all jobs? Or do we have to go piecemeal? Apr 30, 2015 at 3:15
  • @MichaelChirico man lprm | grep "cancel all jobs"
    – zwets
    Feb 12, 2016 at 8:16
18

Use

lpstat -W completed -o

to view list of completed jobs.
Use

lpstat -o

to view list of not-completed jobs.

And to delete job list,just use this command:

cancel -a -x

This will cancel all pending jobs, as well as deleting them.

1
  • 5
    This should be the accepted answer.
    – vcarel
    Mar 4, 2018 at 16:54
2

Well, answers given here didn't work for me so here's what I did -

ps aux | grep printer
kill {printer job}
1

I tried using lpstat and lprm but was unable to figure out basic things like the job number and stuff. Instead, I used the command:

lpq

This produced:

zac@computer:~$ lpq
lpq: Error - no default destination available.

A quick Internet search and then I tried:

zac@computer:~$ lpq -a
Rank    Owner   Job     File(s)                     Total Size
1st     zac     85      TorahNT.odt                 59392 bytes

FINALLY I find the all important Job number: 85!

NOW I run lprm:

zac@computer:~$ lprm 85
zac@computer:~$

And to confirm I did this:

zac@computer:~$ lpq -a
no entries
zac@computer:~$ 

Finally, the printer queue is empty.

1
  • Really nice clear answer - very helpful for people unfamiliar with the commands, thanks!
    – Zanna
    Apr 6, 2022 at 8:41

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .