SóProvas


ID
17911
Banca
CESGRANRIO
Órgão
BNDES
Ano
2008
Provas
Disciplina
Sistemas Operacionais
Assuntos

No Linux, a execução da linha de comando

echo abcde12345 | tr 3 4 | grep -v 3 | wc -l

produz como saída

Alternativas
Comentários
  • echo abcde12345 => abcde12345tr 3 4 => abcde12445 (translate/traduz 3 como 4)grep -v 3 => abcde12445 (-v inverte a procura, isto é,retorna o que não é 3)wc -l => 1 (conta no número de linhas)
  • questão insana. qual o nome do assunto? quero estudar isso. vlw
  • c-

    tr - translate (apaga ou substitui characteres)

    usando so o tr, sabe-se que ele substitui um character por outro

    ____________________________________________________________________________________________________________

    echo abcde12345 | tr 3 4

    resulta em:

    abcde12445

    logo, tr substitui o character especificado na String por outro.

    echo abcde12345 | tr 3 z

    substitui 3 por z: abcde12z45

    se tentar substituir um character por uma sequencia de charcteres, somente o primeiro character sera utilizado:

    echo abcde12345 | tr 3 compotas -> abcde 12c45

    ____________________________________________________________________________________________________________

    echo abcde12345 | tr 3 4 | grep -v 3

    grep -v (invert the match) retorna a sequencia que nao tiver o character especificado. em echo abcde12345 | tr 3 4 | grep -v 3, ele retorna

    abcde12445

    por quê? porque o '3' nao faz mais parte de 'abcde12345' apos tr 3 4.

    mas 'abcde12345 | tr 3 4 | grep -v a'

    nao retorna nada porque o 'a' faz parte de abcde12345

    ____________________________________________________________________________________________________________

    echo abcde12345 | tr 3 4 | grep -v 3 | wc -l

    wc - word count. é um comando que lê input e mostra algum dado quantitativo.

     wc -l : mostra o número de linhas

     wc -c : mostra o número de bytes

     wc -m : mostra o número de caracteres

     wc -w : mostra o número de palavras

    logo, 'echo abcde12345 | tr 3 4 | grep -v 3 | wc -l ' ira exibir 1, pois o comando tem so 1 linha.

    como o comando é puramente estatístico, ele nao é afetado pelos comandos anteriores ao pipe.