![지난 1시간 동안의 마지막 로그인 횟수](https://linux55.com/image/214120/%EC%A7%80%EB%82%9C%201%EC%8B%9C%EA%B0%84%20%EB%8F%99%EC%95%88%EC%9D%98%20%EB%A7%88%EC%A7%80%EB%A7%89%20%EB%A1%9C%EA%B7%B8%EC%9D%B8%20%ED%9A%9F%EC%88%98.png)
좋아요, 기본적으로 저는 특정 날짜와 시간을 제공하려고 하며 주어진 시간과 날짜의 마지막 시간 또는 마지막 두 시간과 같이 해당 시간 범위 내에 이루어진 모든 로그인을 보고 싶습니다. 어디에나 syslog가 없기 때문에 두 가지 방법이 모두 필요합니다. 따라서 기본적으로 일부 시스템에서는 마지막 방법인 cat syslog가 작동합니다.
이것이 내가 지금까지 얻은 것입니다.
last | grep Dec | grep 1 | grep 17:*
그리고
cat syslog | grep Dec | grep 1 | grep 17:40 | grep -E ???
그러나 이것은 작동하지 않습니다. 내 말은 그것이 작동하고 특정 날짜와 시간에 대한 로그인 정보를 표시한다는 것을 의미하지만 그게 전부입니다. 예를 들어 -E 매개변수 다음에 무엇을 제공하여 계속 실행되는지 알 수 없습니다.
비슷한 스레드를 확인했지만 나에게도 작동하지 않습니다. 내부에? ? ? 이것저것 많이 넣어봤지만 성공하지 못했습니다. Asterisk는 나에게 좋은 결과를 주었지만 이렇게 하면 풀타임만 얻을 수 있고 범위가 16:40에 시작하면 휴스턴에 문제가 있습니다.
답변1
예상했던 대로인가요?
LANG=C last | egrep "Fri\s*Dec\s*2 $(date '+%H')"
답변2
나는 이것이 당신이 기대하는 것이라고 생각합니다.
지난 한 시간 동안의 마지막 로그인을 가져옵니다.
last --since "$(date -d 'now - 1hour' +'%Y-%m-%d %H:%M')"
25 Dec 2022
와 사이의 로그인을 보여줍니다 .02:42
02:59
last --since '2022-12-25 02:42' --until '2022-12-25 02:59'
시간은24시간 형식. About --until '2022-12-25 02:59'
logins from은 02:59
무시되므로(이유는 모르겠습니다) 02:42
to 로그인 정보만 표시됩니다 02:58
.
또한 특정 사용자가 로그인하도록 하려면 다음 명령을 사용하십시오.
last youruser --since '2022-12-25 02:42' --until '2022-12-25 02:58'