Linux: xbindkeys Tutorial

By Xah Lee. Date: . Last updated: .

xbindkeys is a tool to let you create keyboard shortcuts to run shell commands, globally.

xbindkeys can bind almost any key or key combination. Example: Caps Lock, ScrLk, Pause, F2, number pad keys, multimedia keys, and special app launch buttons, and also standard modifier key combinations such as ▤ Menu, 【Ctrl+3】, 【Super+3】, etc.

Install xbindkeys

# install xbindkeys
sudo apt-get install xbindkeys

xbindkeys config file

Create a file at


Add the following content:

# sample xbindkeys config
# place this file at ~/.xbindkeysrc

# make F8 launch Google Chrome browser

# make F3 do Ctrl+c
"xvkbd -no-jump-pointer -xsendevent -text '\Cc'"

Mouse button example:

# mouse button 9 sends Control + PageUp
"xvkbd -xsendevent -text '\C\[Page_Up]'"

# mouse button 8 sends Control + PageDown
"xvkbd -xsendevent -text '\C\[Page_Down]'"

For each keybinding in this example, the xbindkeys config takes 2 lines.

Reload the Config File

Reload the config file:

# make xbindkeys reload config
killall -s1 xbindkeys

Start xbindkeys:

# start xbindkeys daemon
xbindkeys -f ~/.xbindkeysrc


To fully use xbindkeys, you need to know what shell scripts to call.

Sending Keys

To have shell command send keys, you need to install xvkbd.

[see Linux: xvkbd tutorial]

Launching App

Use the app's command name directly. For example,

For GUI app command names or how to find the name, see:

Open File

Call xdg-open to open file.

xdg-open ~/todo.txt

Switch Windows

Linux: Add Keyboard Shortcut to Switch App

Control Sound

Linux: Change Volume by Command

Linux Keybinding Topic

  1. Linux: Keyboard Software Guide
  2. Linux: Swap Control Alt Keys
  3. Linux: Set F2 F3 F4 to Cut Copy Paste
  4. Linux: Swap CapsLock Escape Keys
  5. Linux: Make CapsLock Do Home Key
  6. Linux: Setup Shift Lock Key
  7. Linux: Add Keyboard Shortcut to Switch App
  8. Linux: Set Key Repeat Rate
  9. Linux: Set System Keyboard Layout
  10. Linux: How to Switch to Dvorak Keyboard Layout
  11. Linux: Change Volume by Command
  12. Linux: xmodmap Tutorial
  13. Linux: xbindkeys Tutorial
  14. Linux: xvkbd tutorial
  15. Linux: Find Keyboard Key Scancode
  16. Linux: X11 Keyboard Key Names

If you have a question, put $5 at patreon and message me.