더 많은 사람이 로그인한 경우 활성 사용자를 어떻게 얻나요?

더 많은 사람이 로그인한 경우 활성 사용자를 어떻게 얻나요?

현재 컴퓨터를 사용하고 있는 사용자가 SSH 세션을 통해 정보를 얻고 싶습니다. "w" 또는 "who"로 로그인한 사용자를 가져오는데, 현재 어느 사용자가 yad를 사용하여 그에게 메시지를 보내기 위해 열려 있는지 확인할 수 있나요?

편집: 더러운 코드를 찾았지만.. 지금은 작동합니다.

#!/bin/bash
tty=$(cat /sys/class/tty/tty0/active)
active_user=$(w | grep $tty | awk '{print $1;}')

#to get the display also:
disp=$(who | awk -v term="$tty" '/\(:/ $0 ~ term { gsub(/\(|\)/, "", $0); print $5 }')

답변1

더러운 코드를 찾았지만.. 지금은 작동합니다.

#!/bin/bash
tty=$(cat /sys/class/tty/tty0/active)
active_user=$(w | grep $tty | awk '{print $1;}')

#to get the display also:
disp=$(who | awk -v term="$tty" '/\(:/ $0 ~ term { gsub(/\(|\)/, "", $0); print $5 }')

관련 정보