XDO(1)

NAME
xdo - Perform actions on windows

SYNOPSIS

xdo ACTION [OPTIONS] [WID ...]

DESCRIPTION

Apply the given action to the given windows.

If no window IDs and no options are given, the action applies to the focused window.

ACTIONS

close
    Close the window.

kill
    Kill the client.

hide
    Unmap the window.

show
    Map the window.

raise
    Raise the window.

lower
    Lower the window.

below
    Put the window below the target (see -t).

above
    Put the window above the target (see -t).

move
    Move the window.

resize
    Resize the window.

activate
    Activate the window.

id
    Print the window’s ID.

pid
    Print the window’s pid.

key_press, key_release
    Simulate a key press/release event.

button_press, button_release
    Simulate a button press/release event.

pointer_motion
    Simulate a pointer motion event.

-h
    Print the synopsis and exit.

-v
    Print the version and exit.

OPTIONS

When options are provided, the action applies to all the children of the root window that match the comparisons implied by the options in relation to the focused window.

-r
    Distinct ID.

-c
    Same class.

-C
    Distinct class.

-d
    Same desktop.

-D
    Distinct desktop.

-n INSTANCE_NAME
    The window has the given instance name.

-N CLASS_NAME
    The window has the given class name.

-a WM_NAME
    The window has the given wm name.

-t WID
    The target window for the below and above actions.

-p PID
    The window has the given pid.

-k CODE
    Use the given code for the key_press, key_release, button_press and button_release actions.

-x [±]PIXELS
    Window x coordinate (or delta) for the move and pointer_motion action.

-y [±]PIXELS
    Window y coordinate (or delta) for the move and pointer_motion action.

-w [±]PIXELS
    Window width (or delta) for the resize action.

-h [±]PIXELS
    Window height (or delta) for the resize action.

-m
    Wait for the existence of a matching window.

-s
    Handle symbolic desktop numbers.

EXAMPLES

Close the focused window:

    xdo close

Close all the windows having the same class as the focused window:

    xdo close -c

Hide all the windows of the current desktop except the focused window:

    xdo hide -dr

Activate the window which ID is 0x00800109:

    xdo activate 0x00800109

Send fake key press/release events with keycode 46 to the focused window:

    xdo key_press -k 46; sleep 0.2; xdo key_release -k 46