qdisc -{add|list|delete} - Manage queueing disciplines


Number non-blank lines in a file

$ nl [file]

Read from standard output

$ cat [file] | nl [options] -

Number only the lines with printable text

$ nl -t [file]

Number all lines including blank lines

$ nl -b a [file]

Number only the body lines that match a basic regular expression (BRE) pattern

$ nl -b p'FooBar[0-9]' [file]


nl -qdisc -add --dev dev --parent id [OPTIONS] qdisc-type [QDISC]

nl -qdisc -delete [ --interactive ] [OPTIONS]
nl -qdisc -list [OPTIONS]


The nl -qdisc tools allow to manage and configure queueing disciplines (qdiscs) in the kernel.


-hor--help Print help text to console and exit.

-vor--version Print versioning information to console and exit.

-qor--quiet Do not print informal notifications about actions taken to the console. By default a short description of each qdisc added/update/deleted will be printed to the console. This option disables this behaviour.

-dor--dev=DEV Network device the qdisc is attached to.

-por--parent=ID Identifier of the parent qdisc/class this qdisc is attached to. The identifier can be specified as classid, name or one of the special values "root" or "ingress".

-ior--id=ID Identifier of qdisc. It can be specified as classid or name.

nl -qdisc -add Options

--update Update qdisc if it already exists, otherwise attempting to add a qdisc which already exists will result in an error. This does not include changing the type of the qdisc, use --replace if you wish to do so.

--replace Replace or update qdisc if it already exists. Same behaviour as --update but will completely replace the qdisc if it exists already.

--update -only Update an existing qdisc but do not create it if it does not exist.

--replace -only Update or replace an existing qdisc but do not create it if it does exist.

nl -qdisc -delete Options

--interactive The interactive mode requires confirmation by the user for each qdisc deleted. It will print a prompt for each qdisc matching the provided filter and requires the user to answer 'y'es or 'n'o.

--yes Make the default answer for interactive prompts be 'y'es. This option is also required to delete all qdiscs on all network devices.

-kor--kind=TYPE Only delete qdiscs of this type.

nl -qdisc -list Options

--details Show detailed information for each qdisc listed.

--stats Show statistics information for each qdisc listed. This option will also turn on detailed information automatically.

-ror--recursive List all TC objects recurisvely attached to all qdiscs matching the filter.

-kor--kind=TYPE Only list qdiscs of this type.


Add a HTB root qdisc with id "5:":

nl -qdisc -add --dev eth0 --parent root --id 5: htb

List all qdiscs on eth0 and print statistical data:

nl -qdisc -list --stats --dev eth0

Delete the qdisc "5:": nl -qdisc -delete --id 5:


nl -classid -lookup(8)


Thomas Graf is the original author and current maintainer of libnl and libnl tools. Many people have contributed to it since.

Copied to clipboard
free 100$ digital ocean credit