chiark / gitweb /
gpg-refresh-cache: accept key ID as optional arg
[bin.git] / mesghere
1 #! /bin/sh
2
3 TTYS=`who | grep $USER | tr -s ' ' | cut -d' ' -f2 | grep -v :`
4
5 if [ -z "$1" ]; then
6         if ! tty > /dev/null; then
7                 echo "stdin is not a tty" >&2
8                 exit 1
9         fi
10         HERE=`tty`
11 elif [ -c "$1" ]; then
12         HERE=$1
13 elif [ -c "/dev/$1" ]; then
14         HERE=/dev/$1
15 else
16         echo "No such device: $1"
17         exit 1
18 fi
19
20 BASEHERE=`echo $HERE | sed 's|^/dev/||'`
21
22 if [ -c $HERE ] && echo $TTYS | grep '\<'$BASEHERE'\>' > /dev/null; then
23         for tty in $TTYS; do [ "$BASEHERE" != "$tty" -a -c /dev/$tty ] && chmod g-w /dev/$tty; done
24         chmod g+w $HERE
25 else
26         echo "You are not logged in on $BASEHERE" >&2
27 fi