---
name: "pw-link"
section: "1"
platform: "linux"
package: "pipewire"
version: "1:1.6.10-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/pw-link"
---

# pw-link(1)

The PipeWire Link Command

## NAME

pw-link - The PipeWire Link Command

## SYNOPSIS

**pw-link** \[*options*\] -o\|-i\|-l\|-t \[*out-pattern*\] \[*in-pattern*\]

**pw-link** \[*options*\] *output* *input*

**pw-link** \[*options*\] -d *output* *input*

**pw-link** \[*options*\] -d *link-id*

## DESCRIPTION

List, create and destroy links between PipeWire ports.

## COMMON OPTIONS

**-r \| --remote=NAME**

The name the *remote* instance to monitor. If left unspecified, a connection is made to the default PipeWire instance.

- **-h \| --help**

  Show help.

- **--version**

  Show version information.

## LISTING PORTS AND LINKS

Specify one of -o, -i or -l to list the matching optional input and output ports and their links.

**-o \| --output**

List output ports

**-i \| --input**

List input ports

**-l \| --links**

List links

**-t \| --latency**

List port latencies

**-m \| --monitor**

Monitor links and ports. **pw-link** will not exit but monitor and print new and destroyed ports or links.

**-I \| --id**

List IDs. Also list the unique link and port ids.

**-v \| --verbose**

Verbose port properties. Also list the port-object-path and the port-alias.

## CONNECTING PORTS

Without any list option (-i, -o or -l), the given ports will be linked. Valid port specifications are:

*port-id*

As obtained with the -I option when listing ports.

*node-name:port-name*

As obtained when listing ports.

*port-object-path*

As obtained from the first alternative name for the port when listing them with the -v option.

*port-alias*

As obtained from the second alternative name for the ports when listing them with the -v option.

Extra options when linking can be given:

**-L \| --linger**

Linger. Will create a link that exists after **pw-link** is destroyed. This is the default behaviour, unless the -m option is given.

**-P \| --passive**

Passive link. A passive link will keep both nodes it links inactive unless another non-passive link is activating the nodes. You can use this to link a sink to a filter and have them both suspended when nothing else is linked to either of them.

**-p \| --props=PROPS**

Properties as JSON object. Give extra properties when creaing the link.

## DISCONNECTING PORTS

When the -d option is given, an existing link between port is destroyed.

To disconnect port, a single *link-id*, as obtained when listing links with the -I option, or two port specifications can be given. See the connecting ports section for valid port specifications.

**-d \| --disconnect**

Disconnect ports

## EXAMPLES

**pw-link** -iol

List all port and their links.

**pw-link** -lm

List all links and monitor changes until **pw-link** is stopped.

**pw-link** paplay:output\_FL alsa\_output.pci-0000\_00\_1b.0.analog-stereo:playback\_FL

Link the given output port to the input port.

**pw-link** -lI

List links and their Id.

**pw-link** -d 89

Destroy the link with id 89.

## AUTHORS

The PipeWire Developers \<https://gitlab.freedesktop.org/pipewire/pipewire/issues\>; PipeWire is available from \<https://pipewire.org\>

## SEE ALSO

**[pipewire(1)](/pipewire/1.md)**, **[pw-cli(1)](/pw-cli/1.md)**
