вторник, 21 мая 2013 г.

bash

Написал для своего bash-скрипта функцию, запрашивающую подтверждение какого-либо действия:
    function confirm() {
        while true
        do
            read -n1 -p "$@ (y/n) "
            echo
            case $REPLY in
                "Y"|"y") return 0 ;;
                "N"|"n") return 1 ;;
            esac
        done
    }
Использовать это можно, например, так:
    if confirm "Are you sure?"
    then
        echo "DO SOMETHING"
    else
        echo "DON'T!"
    fi
Я, конечно, понимаю, что "изобрёл велосипед", но мало ли...