![/etc/shadow에서 날짜 추출](https://linux55.com/image/22349/%2Fetc%2Fshadow%EC%97%90%EC%84%9C%20%EB%82%A0%EC%A7%9C%20%EC%B6%94%EC%B6%9C.png)
파일에는 /etc/shadow
1970년 1월 1일 이후의 일수로 표시되는 여러 날짜 필드가 있습니다. 마지막 비밀번호 변경 날짜 및 만료 날짜와 함께 사용자 목록을 쉽게 얻을 수 있는 방법이 있습니까?
인용하다:실루엣(5)
답변1
chage -l <username>
예제 출력:
Last password change : Dec 17, 2015
Password expires : Mar 16, 2016
Password inactive : never
Account expires : never
Minimum number of days between password change : 7
Maximum number of days between password change : 90
Number of days of warning before password expires : 14
답변2
지정된 계정의 비밀번호 상태를 보고합니다.passwd -S username
for user in $(cut -d: -f1 /etc/passwd); do sudo passwd -S $user; done
답변3
for n in $(sudo cat /etc/shadow | awk '{FS=":";print $3}'); do date -d "01/01/1970 +${n}days" +%F; done
고양이 상을 쓸데없이 사용하지 않으려면 다음을 수행하십시오.
for n in $(sudo awk '{FS=":";print $3}' /etc/shadow); do date -d "01/01/1970 +${n}days" +%F; done
답변4
그러면 각 사용자의 비밀번호 업데이트 정보가 출력됩니다.
/etc/passwd 파일 읽기 >> 각 사용자 구문 분석 >> 각 사용자에 대해 chage -l 명령 실행
for user in $(cut -d: -f1 /etc/passwd); do echo -e "\n $user \n" && chage -l $user; done