Не зная формата файла, возможно, попробуйте:
$ tail -1000 general.log | grep Connect | egrep -v "(abc|slave_user)" | awk '{if ($3 == "root@localhost"){print $1;}else{print $3}}'
Или, возможно, это сработает, что проще:
$ awk '/Connect/ {if ($3 == "root@localhost"){print $1;}else{print $3}}' general.log
Я пытался.Если я ошибаюсь или есть лучший способ, я научусь этому вовремя.:)
Может быть, используя int () ??????
$ awk '/Connect/ {if (!int($3)){print $1;}else{print $3}}' general.log