SóProvas


ID
617509
Banca
CESGRANRIO
Órgão
FINEP
Ano
2011
Provas
Disciplina
Sistemas Operacionais
Assuntos

Os sistemas UNIX são distribuídos com uma grande quantidade de comandos conhecidos como filtros. Esses comandos podem ser combinados em sequência com pipes (condutos) para executar tarefas complexas. A sequência de filtros ligados por pipes capaz de selecionar, ordenar alfabeticamente e imprimir na saída padrão a descrição de todos os usuários cadastrados no arquivo /etc/passwd que pertencem ao grupo alunos, cujo GID é igual a 500, é:

Alternativas
Comentários
  • o /etc/passwd tem 7 campos (fields)

    o campo 4 é o GID. que é o que nos interessa.

    passando ao comando cut -d: -f4,5 /etc/passwd | grep ^500: | cut -d: -f2 | sort
    o cut, imprime partes selecionadas de arquivos.
    o -d escolhe o delimitador que nesse caso é o ':' (o padrão é o tab)
    Com esse delimitador temos os 7 campos separados, e ele escolhe os campos 4 e 5.  GID e USER ID INFO (que é a descrição que ele pede).
    Então ele faz um grep nos GID iguais a 500. (o ^ apenas indica que antes do 5 tem que estar vazio, senão ele também retornaria um GID 1500 por exemplo)
    Depois com um segundo cut, imprimimos apenas o USER ID INFO (que agora é o field 2).
    E por fim e feito um sort para ficar em ordem alfabética.




    ps: questão sacana da cesgranrio, ter que saber a posição dos IDs...



    http://www.cyberciti.biz/faq/understanding-etcpasswd-file-format/
  • Bacana a explicação da Mayara, mas eu acertei foi no chute mesmo.