#!/usr/bin/env sh # YES_ZSH # YES_BASH # YES_DASH # YES_ASH ### @ pause ### pause — the companion script of [`confirm`.](#confirm) ### ### ``` ### $ pause ### Press any key to continue ### $ ### ``` if [ -n "$ZSH_VERSION" ]; then pause() { read -sk $'?Press any key to continue\n' } elif [ -n "$BASH_VERSION" ]; then pause() { read -n1 -sp $'Press any key to continue\n' 2>&1 } 1<>/dev/tty <&1 # ensure this interacts with a terminal instead of a pipe else pause() ( old="$(stty -g)" trap 'stty "$old"' INT EXIT printf 'Press any key to continue\n' stty -icanon -echo dd ibs=1 count=1 2>/dev/null >/dev/null ) 1<>/dev/tty <&1 # ensure this interacts with a terminal instead of a pipe fi [ -n "${preload+-}" ] || pause "$@"