Questão de Programação — Linguagens de programação — CESPE / CEBRASPE 2024
Programação›Linguagens de programação
Código
ce185093
Banca
CESPE / CEBRASPE
Órgão
SEBRAE-NACIONAL
Ano
2024
Nível
Superior
Cargo
Analista Técnico II – Banco de Dados
O objetivo principal desse script Shell é
Acontar o número de arquivos regulares no caminho especificado e exibir seu total.
Bcontar o número de diretórios no caminho especificado e exibir seu total.
Cexibir a lista de todos os arquivos no diretório especificado.
Dcontar o número de arquivos e diretórios no caminho especificado e exibir seu total.
Revelar gabarito e comentário▾
GabaritoA — contar o número de arquivos regulares no caminho especificado e exibir seu total.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Shell Script: contagem de arquivos regulares
Gabarito: letra A. O script exibido na imagem tem como objetivo contar o número de arquivos regulares no caminho especificado e exibir seu total, pois utiliza o comando find com a opção -type f, que seleciona apenas arquivos regulares, e o resultado é contado e exibido. A alternativa correta é a letra A.
O comando find é uma ferramenta poderosa do Linux para localizar arquivos e diretórios com base em critérios específicos. A opção -type permite filtrar por tipo de arquivo, sendo f para arquivos regulares, d para diretórios, l para links simbólicos, entre outros. No script, a combinação find <caminho> -type f lista todos os arquivos regulares dentro do caminho especificado, e o wc -l conta o número de linhas da saída, resultando no total de arquivos.
A distinção entre arquivos regulares e diretórios é fundamental: arquivos regulares são aqueles que armazenam dados (texto, binários, etc.), enquanto diretórios são estruturas que organizam outros arquivos e subdiretórios. O find com -type f ignora diretórios, links e outros tipos especiais, contando apenas os arquivos comuns.
A pegadinha da banca está em confundir o tipo de arquivo filtrado: muitos candidatos podem pensar que o script conta diretórios ou todos os arquivos e diretórios, mas a opção -type f é específica para arquivos regulares. Além disso, a alternativa C sugere exibir a lista de arquivos, mas o script não apenas lista, ele conta e exibe o total.
Guarde a distinção entre -type f (arquivos regulares) e -type d (diretórios): é exatamente nela que as alternativas se dividem.
1find <caminho> -type f
2Seleciona arquivos regulares
3wc -l conta linhas
4Exibe total de arquivos
LEVEL · soulevel.com.br
Alternativa A — ✅ Correta ⟵ GABARITO
A alternativa descreve corretamente o objetivo do script: contar o número de arquivos regulares no caminho especificado e exibir seu total. O comando find <caminho> -type f seleciona apenas arquivos regulares, e o wc -l conta as linhas, resultando no total exibido.
Alternativa B — ❌ Incorreta
Afirma que o script conta diretórios, mas o -type f filtra apenas arquivos regulares, não diretórios. Para contar diretórios, seria necessário usar -type d.
Alternativa C — ❌ Incorreta
Diz que o script exibe a lista de todos os arquivos, mas o script não apenas lista: ele conta e exibe o total. A presença do wc -l indica contagem, não listagem simples.
Alternativa D — ❌ Incorreta
Afirma que o script conta arquivos e diretórios, mas o -type f exclui diretórios. Para contar ambos, seria necessário usar -type f -o -type d ou omitir o filtro de tipo.
NÃO CAIA NESSA!
A banca troca o tipo de arquivo filtrado: -type f conta apenas arquivos regulares, não diretórios. Candidatos desatentos podem marcar B ou D, pensando que o script conta diretórios ou tudo. Lembre-se: f = file (arquivo regular), d = directory (diretório).
PEGA ESSA DICA!
Para identificar o objetivo de um script com find, observe a opção -type: f para arquivos regulares, d para diretórios, l para links. Se houver wc -l, o script conta; se houver apenas ls ou find sem contagem, ele lista.