"getent passwd | grep" não te leva a lugar nenhum?
Estou procurando uma maneira multiplataforma de determinar se um nome de usuário e um nome de grupo são válidos ou não. As plataformas são Linux, Solaris, Aix e HPUX. Seria necessário trabalhar se o usuário / grupo é definido localmente (por exemplo, / etc / passwd) ou por meio de um serviço como o LDAP ou o NIS / YP. É provavelmente uma ilusão pensar que tal método existe, mas não pode doer (demais) perguntar. Obrigado!
Informações Adicionais: Infelizmente eu não controlo os sistemas onde isto irá rodar; o roteiro vai para os clientes e eles podem fazer o que quiserem. E eu não tenho como testar nada disso ...
De commandlinefu :
id <username>
Se não estalar os flatfiles, normalmente uso os comandos id
ou finger
. Se você tiver o sistema configurado para usar LDAP ou NIS / YP em todo o sistema, qualquer utilitário de linha de comando deverá compartilhar essa funcionalidade.
Por fim, para que sua solução seja infalível, você provavelmente precisará escrever uma lógica mais complicada em seu script. Esse é um bom exemplo do motivo pelo qual os departamentos de TI geralmente tentam evitar muitas variações de tecnologia.
Tags user-management ldap solaris linux