blob: fd71280d897a2742cc3e60896bbd47153fa5f117 (
plain)
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
26
27
28
29
30
31
32
33
34
35
36
37
|
#!/bin/sh
help() {
echo "ttyl - tty lock
USAGE:
ttyl [OPTION]... [COMMAND]
OPTIONS:
-a lock all TTYs
(default when no command is passed and terminal is a tty)
-c lock current TTY
-h show this help message"
}
err() { printf 'ttyl: %s\n' "$@" >&2; exit 1; }
while getopts 'ach' o; do case "$o" in
a) lockall=0 ;;
c) lockall=1 ;;
h) help >&2; exit ;;
*) err "invalid option -- '$OPTARG'" ;;
esac done
shift $((OPTIND - 1))
case "$lockall" in
1) lock="vlock" ;;
0) lock="vlock -a" ;;
*)
case "$(tty)" in
/dev/tty[1-7]) lock="vlock -a" ;;
*) lock="vlock" ;;
esac
;;
esac
sleep 1 && $@ & $lock
|