사용자 이름을 묻고 찾기 위해 이 기본 스크립트를 작성하는 방법

사용자 이름을 묻고 찾기 위해 이 기본 스크립트를 작성하는 방법

사용자에게 사용자 이름을 묻는 스크립트를 작성해야 하며, 해당 사용자 이름이 존재하면 현재 실행 중인 모든 명령 목록과 함께 암호 파일의 모든 사용자 정보를 나열해야 합니다. 지금까지 나는 이것을 가지고 있습니다 :

#!/bin/bash

echo "Please enter username"
read username

if [ "$username" = cat /etc/passwd | cut -d: -f1 ]
then 
    //list all user info from passwd file
    id $username

    //list all commands they are running
    i dont know how to code this
fi


제가 무엇이든 채우거나 변경할 수 있도록 도와주시면 좋을 것 같습니다. 감사합니다!

답변1

좋습니다. 분명히 협조하라는 요청을 받았 grep으므로 pgrep이를 수행할 수 있습니다(루프 없음, 조건부 없음, 잘라내기 없음 등).

#!/bin/bash
echo "USERNAME:"
read u

#echo "USERNAME CHOSEN: $u"

if ! grep -e "^$u" /etc/passwd >/dev/null; then
echo NO SUCH USER!!!
exit
fi

echo  -e "\v user:$u info from /etc/passwd: "

grep "^$u" /etc/passwd


echo -e "\v USERS COMMANDS" 
echo "PID       CMD"

pgrep -u $u -a |awk '{print $1,"\t",$2}'

관련 정보