ls
já realiza essa pesquisa. Você pode executar uma pesquisa de informações do usuário na linha de comando com getent passwd
.
Se ls
mostrar um ID de usuário em vez de um nome de usuário, é porque não há nenhum usuário com esse nome. Os sistemas de arquivos armazenam IDs de usuários, não nomes de usuários. Se você montar um sistema de arquivos de outro sistema ou se um arquivo pertencer a um usuário excluído agora ou se tiver passado um ID de usuário numérico para chown
, você poderá ter um arquivo que pertença a um ID de usuário que não possui um nome.
Em um host compartilhado, você pode ter acesso a alguns arquivos que são compartilhados entre várias máquinas virtuais, cada uma com seu banco de dados do usuário. Isso é um pouco estranho (por que compartilhar arquivos, mas não os usuários que os possuem?), Mas é tecnicamente possível.