![마지막 명령을 필터링하기 위해 쉘 스크립트를 작성하는 방법은 무엇입니까?](https://linux55.com/image/142347/%EB%A7%88%EC%A7%80%EB%A7%89%20%EB%AA%85%EB%A0%B9%EC%9D%84%20%ED%95%84%ED%84%B0%EB%A7%81%ED%95%98%EA%B8%B0%20%EC%9C%84%ED%95%B4%20%EC%89%98%20%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8%EB%A5%BC%20%EC%9E%91%EC%84%B1%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%80%20%EB%AC%B4%EC%97%87%EC%9E%85%EB%8B%88%EA%B9%8C%3F.png)
로그인 통계에 대한 스크립트를 작성하고 싶습니다. 사용자가 로그인한 횟수를 계산한 다음 최종 사용자가 지정한 오름차순 또는 내림차순으로 표시하고 싶습니다. 문제는 사용자가 로그인한 횟수를 계산할 수 있는 스크립트를 작성하는 방법을 모른다는 것입니다. 마지막 명령을 사용해야 합니다.
답변1
#!/bin/bash
userlist=$(cat /etc/passwd | cut -d : -f 1)
for user in $userlist; do
timesloggedin=$(last $user | head -n -2 | wc -l);
echo $timesloggedin $user;
done | sort -r
그러면 데몬 계정 등을 포함하여 시스템의 모든 사용자 이름을 가져옵니다. 필요하지 않은 경우 userlist
사용자 이름 목록을 제공해 주세요. 출력을 오름차순으로 정렬하려면 -r
정렬하려는 플래그를 제거하십시오.