Dar mais informações obtém respostas melhores. De improviso, no OpenSUSE, vejo que
passwd -S -a
fornece um registro para cada entrada em /etc/passwd
, assim:
thomas PS 03/01/2013 0 99999 7 -1
para que você possa filtrar com o awk:
passwd -S -a | awk -v user=$USER '{ if ( $1 == user ) { printf "%s\n", $3; } }'
No entanto, o comando passwd
quer fazer isso como root
, então seu script teria que fazer algo mais elegante do que usar a variável $USER
(para o usuário atual ) . O motivo pelo qual ele quer root
é que ele está lendo o conteúdo de /etc/shadow
, que não é público.
Você pode usar chage
, que mostra um relatório diferente, mas em uma verificação rápida, ele solicita a senha do usuário (que provavelmente não é o que você quer):
The
chage
program requires a shadow password file to be available.The
chage
command is restricted to the root user, except for the-l
option, which may be used by an unprivileged user to determine when his/her password or account is due to expire.
Leitura adicional:
-
passwd - altera a senha do usuário , mostrando as opções
-S
e-a
- arquivo de senhas shadow-shadow , mantendo data da última alteração de senha
-
Como a senha expira em , mostra
chage
, mas omite o prompt da senha ...