How To Find Out HP Network Printer Serial Number Remotely Using Bash Shell On Linux or Unix

in Categories , , , last updated October 13, 2015

I manage a small network including couple of HP printers. Is there an easy way to access HP printer serial number in the terminal on Linux or Unix-like system? How do I find the model, product, and serial number on my HP printer using bash command line options?

There are many ways to get this information:

  1. curl command – Standard tool to transfer data from or to a server.
  2. hp-info command – Part of hp-toolbox software.
  3. Printer Management Language to get information from the printer.

Use curl command to query HP printer for serial number

Most HP printers comes with an embedded web-server called HP HTTP Server. The web-server exposes the following info:

  • Printer name and model
  • Printer Firmware number
  • Printer serial number


The curl command is available on Linux, Apple OS X, FreeBSD, OpenBSD, and Unix-like operating system. Let us say your printer IP address is, enter:
curl -k -I
curl -I
Sample outputs:

Fig.01: Query printer for serial number
Fig.01: Query printer for serial number

In this sample outputs my printer details are as follows:

  • Printer name: HP Officejet Pro 8600
  • Printer model number: CM750A
  • Printer serial number: CN276BKXYZZZZYY
  • Printer firmware number: CLP1CN1516AR

hp-info command example

The hp-info command query a printer for static model information, dynamic status informtion, and CUPS printer queue settings. This is part of HPLIP (Hewlett-Packard Linux Imaging and Printing). Itt is an HP developed solution for printing, scanning, and faxing with HP inkjet and laser based printers in Linux.
$ hp-info
Sample outputs:

Fig.02: hp-info command in action
Fig.02: hp-info command in action

$ hp-query -n -d 'hp_device_name_here'
Sample outputs:
Fig.03: hp-query command in action
Fig.03: hp-query command in action

Posted by: Vivek Gite

The author is the creator of nixCraft and a seasoned sysadmin, DevOps engineer, and a trainer for the Linux operating system/Unix shell scripting. Get the latest tutorials on SysAdmin, Linux/Unix and open source topics via RSS/XML feed or weekly email newsletter.

Share this on (or read 4 comments/add one below):

4 comment

  1. Bonjour,

    Une autre alternative serait d’interroger l’agent SNMP de l’imprimante en utilisant l’OID qui pointe sur le bon attribut. Ainsi sur une imprimante Ricoh j’utilise:

    ~ $ snmpwalk -v1 -c public 10.XXX.XXX.XXX SNMPv2-SMI::mib- [Enter]
    SNMPv2-SMI::mib- = STRING: “V9414500848”

    Pour trouver l’OID en connaissant d’avance le numéro de série:

    ~ $ snmpwalk -v1 -c public 10.XXX.XXX.XXX | grep V9414500848 [Enter]
    SNMPv2-SMI::mib- = STRING: “V9414500848”

    (10.XXX.XXX.XXX adresse IP de l’imprimante)

  2. I use HP printers, and I didn’t know the hp-query tool, interesting, thanks.
    I didn’t either thought of using [curl], useful too.

    And [snmpwalk] is not to forget. Thanks JML-92. (merci ;-) ) but I don’t know if any network-able HP printer does answer to snmp queries.


    Have a question? Post it on our forum!