Isso tem um comando date
que mostra o minuto anterior:
who | grep 'date -d "now -1 min" +%R' | awk '{ print $1 " joins us." }' | write $USER
Você pode executá-lo no minuto com cron
:
* * * * * /some/dir/scriptname
Você pode até fazer isso:
who | grep 'date -d "now -60 sec" +%R' | awk '{ print $1 " joins us." }' | write $USER
Editar : aqui está um brinde:
awk 'FNR > 2 {printf ",\n"} {printf "%s", name; name = $0; next} END {conj = " and\n"; if (FNR == 1) {singular = "s"; conj = ""}; printf "%s%s join%s us\n", conj, name, singular}'
Saída com vírgulas, "e" e concordância verbal e remoção de frase repetida (você pode substituir as novas linhas (exceto a última) por espaços se quiser tudo em uma linha):
allen joins us
ou
bill and
chris join us
ou
dave,
ellen and
felicity join us