aboutsummaryrefslogtreecommitdiff
path: root/bash/bashrc.d/readv.bash
blob: abd624a47e5f1335c0ee4749c0c81468d13453bc (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
readv() {
    local arg
    local -a opts names
    for arg ; do
        case $arg in
            --)
                shift
                break
                ;;
            -*)
                shift
                opts[${#opts[@]}]=$arg
                ;;
            *)
                break
                ;;
        esac
    done
    names=("$@")
    builtin read "${opts[@]}" "${names[@]}" || return
    for name in "${names[@]}" ; do
        printf >&2 '%s: %s = %s\n' \
            "$FUNCNAME" "$name" "${!name}"
    done
}