Examinando o /etc/passwd
arquivo, devo obter uma lista de todos os usuários no sistema. No entanto, ao despejar o passwd
arquivo no Mac OS XI, não vejo meu nome de usuário atual, mas muitas entradas como estas:
_xgridagent: *: 86: 86: Agente Xgrid: / var / xgrid / agent: / usr / bin / false _appowner: *: 87: 87: Proprietário do aplicativo: / var / empty: / usr / bin / false _windowserver: *: 88: 88: WindowServer: / var / empty: / usr / bin / false _spotlight: *: 89: 89: Destaque: / var / empty: / usr / bin / false _tokend: *: 91: 91: Daemon de token: / var / empty: / usr / bin / false
Como posso fazer login no shell com meu nome de usuário e vê-lo quando o faço who
?
dsconfigad
.Há um conjunto de serviços de diretório que mantém as informações. Há uma série de ferramentas de linha de comando (
dscl
por exemplo) para manipulá-las (hard) ou você pode usar as Preferências do Sistema para lidar com algumas delas.fonte
O OS X não usa os arquivos UNIX / LINUX / etc / passwd. Em vez disso, ele o armazena no NetInfo. O comando usado para interagir com o NetInfo é o utilitário de comando do serviço de diretório, ou dscl.
Não estou familiarizado com os comandos, mas tenho certeza de que um simples
man dscl
não faria mal a ninguém.fonte
O Mac OS X usa o Open Directory .
fonte
Sei que isso não está respondendo diretamente à pergunta, mas sinto que muitos que se deparam com essa pergunta só querem saber como fazer uma consulta simples para encontrar informações do usuário na linha de comando. Para outros ao longo deste caminho, apenas precisando ver uma configuração semelhante aos comandos unix padrão, achei este comando simples para ser útil.
Você também pode fazer:
Para ver tudo, menos ser avisado, despejará na tela uma versão hexadecimal da foto do usuário. Se você precisar de outros componentes, é útil ver o que existe, se você puder evitar o item JPEGPhoto.
fonte