Code Library
Home Submit Free Hosting Link To Us Contacts

Bash Capture keystrokes without needing to press ENTER

Bash Capture keystrokes without needing to press ENTER Bash Bash Capture keystrokes without needing to press ENTER Download (.zip)



#!/bin/bash
# Capture keystrokes without needing to press ENTER.


keypresses=4                      # Number of keypresses to capture.


old_tty_setting=$(stty -g)        # Save old terminal settings.

echo "Press $keypresses keys."
stty -icanon -echo                # Disable canonical mode.
                                  # Disable local echo.
keys=$(dd bs=1 count=$keypresses 2> /dev/null)
# 'dd' uses stdin, if "if" not specified.

stty "$old_tty_setting"           # Restore old terminal settings.

echo "You pressed the \"$keys\" keys."

# Thanks, S.C. for showing the way.
exit 0






Tatet