#!/bin/bash chat="~/.chat" install() { staffUsers=$(cat /etc/group | grep staff | awk -F: '{print $4}' | tr ',' ' ') mkdir -p /usr/local/chat cd /usr/local/chat/ mkdir -p $(echo "$staffUsers") touch $(echo $staffUsers | tr ' ' '\n' | awk '{print "/usr/local/chat/" $1 "/private.chat"}') chmod -R 775 /usr/local/chat } install listen() { tail -f echo /usr/local/chat/$USER/private.chat } send() { user=$(echo $1 | awk -F@ '{print $1}') vm=$(echo $1 | awk -F@ '{print $2}') # echo "Send to ${user}@${vm}" p2vm $vm exec 'echo -e "\\n'$c_white_bg$c_black$USER'@'$HOSTNAME$c_ $(date +%D\ %T)' '$c_cyan${@:2}$c_'" >> /usr/local/chat/'$user'/private.chat' -sy } repl() { read -re -p "chat> " mess echo -e "$c_white_bg$c_black$USER@$HOSTNAME$c_ $(date +%D\ %T) $c_cyan$mess$c_" send $1 $mess repl $1 } if [[ $1 = "listen" ]] then listen else [[ -z $2 ]] && repl $1 || send $@ fi