다른 사용자에 대해 다른 motd 파일을 격리할 수 있습니까? 그래서 관리자는 다른 메시지를 받았고 다른 사람들도 다른 메시지를 받았습니다...
답변1
오랜 검색 끝에 다음과 같은 아이디어가 떠올랐습니다.
/etc/profile을 편집하고 다음 루프를 끝 부분, TRAP 앞에 추가하십시오.
#!/bin/ksh
ROOTY=$(whoami)
if [ ${ROOTY} != root ] ; then
for i in `who am i |awk {'print $1'}`
do
RID=$i
UNIXADM=$(sudo cat /home/root/unixusers | grep -Fx $RID | wc -l)
if [ ${UNIXADM} == 1 ] ; then
cat /etc/motd.unixusers
fi
done
fi
여기서 /home/root/unixusers는 사용자 목록입니다. /etc/motd.unixusers는 사용자별 motd입니다.
답변2
내가 보기엔 너무 복잡해 보여
ROOTY=$(whoami)
if [ ${ROOTY} != root ]
then
if sudo grep -q $ROOTY /home/root/unixusers
then cat /etc/motd.unixusers
else cat /etc/motd
fi
fi
참고하세요
whoami
who am i |awk {'print $1'}
동일한 결과를 얻을 수도 있습니다sudo cat /home/root/unixusers | grep -Fx $RID | wc -l
동등하다sudo grep -c $RID /home/root/unixusers
- 그런데 1과 비교하면 grep에서 결과를 얻지 못하는 이유는 무엇입니까?
- 한 항목에 대해 루프를 실행하려는 이유는 무엇입니까?