Apenas analise a saída de who :
#!/usr/bin/env bash
num=$(who | sort -uk1,1 | wc -l)
date +"Today %d %B, there are $num users logged in onto the system"
Explicação
sort -uk1,1 : o -k1,1 significa "classificar no 1º campo e somente no primeiro campo". O -u significa "imprimir apenas os campos de classificação exclusivos". Juntos, eles imprimirão uma linha para cada usuário encontrado.
O piping acima para wc -l imprimirá o número de linhas, que é o número de usuários únicos. Note que -u é uma extensão GNU, mas como você está usando date -d , que também é GNU, presumo que você esteja usando as versões GNU das ferramentas.