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