No ambiente Linux, considere os arquivos arq1.txt, arq2.txt, arq3.txt, arq11....

No ambiente Linux, considere os arquivos arq1.txt, arq2.txt, arq3.txt, arq11.txt e arq4.new armazenados no diretório /usr/arq. Estando dentro desse diretório, é possível usar o comando:


No ambiente Linux, considere os arquivos arq1.txt, arq2.txt, arq3.txt, arq11.txt e arq4.new armazenados no diretório /usr/arq. Estando dentro desse diretório, é
possível usar o comando:

I. ls arq?.txt para listar todos os arquivos que começam com o nome arq, que tenham qualquer caracter no lugar do coringa ? e terminem com .txt.

II. ls arq[1-6].txt, para exibir todos os arquivos que começam com o nome arq, que tenham qualquer número no intervalo 1-6 no lugar da 4a letra e terminem com .txt. Neste caso, se obtém uma filtragem mais exata, pois o coringa ? especifica qualquer caracter naquela posição e [ ] especifica número, letra ou intervalo que será usado.

III. ls arq[4,5].new para listar todos os arquivos que começam com arq, contenham caracteres nas posições 4 e 5 e terminem com a extensão .new.

IV. ls arq*.txt para exibir os mesmos arquivos do comando ls arq?.txt, ou seja, listar todos os arquivos com extensão .txt.

É correto o que consta APENAS em

🚀 Desbloqueie a explicação completa

Veja comentários detalhados e resoluções exclusivas para entender o gabarito desta questão.

  • Equipe Gabarite
    Equipe Gabarite
    31/12/1969 • 21:00
    Gabarito: c)

    Vamos analisar cada comando:

    I. ls arq?.txt
    Aqui o ? representa exatamente um caractere qualquer. Então ele vai listar arquivos que começam com "arq", têm mais um caractere qualquer e terminam com ".txt". No seu caso, arquivos como arq1.txt, arq2.txt, arq3.txt, arq4.txt (se existisse) seriam listados. Como arq11.txt tem dois caracteres depois de "arq", ele não aparece. Então essa afirmação está correta.

    II. ls arq[1-6].txt
    O que está entre colchetes é um intervalo de caracteres, aqui números de 1 a 6. Então vai listar arquivos que começam com "arq", têm um número de 1 a 6 na posição seguinte, e terminam com ".txt". Isso é mais específico que o ?, que aceita qualquer caractere. Então essa afirmação também está correta.

    III. ls arq[4,5].new
    Aqui a intenção parece ser listar arquivos que começam com "arq", têm "4" ou "5" na posição seguinte, e terminam com ".new". Mas o uso da vírgula dentro dos colchetes não é correto para especificar múltiplos caracteres. O correto seria usar ls arq[45].new para indicar "4" ou "5". Além disso, o arquivo que existe é arq4.new, não arq5.new. Então essa afirmação está incorreta.

    IV. ls arq*.txt
    O asterisco * significa "qualquer sequência de caracteres", inclusive nenhuma. Então ele vai listar todos os arquivos que começam com "arq" e terminam com ".txt", independente do que tiver no meio. Isso inclui arq1.txt, arq2.txt, arq3.txt, arq11.txt. Portanto, ele lista mais arquivos que o comando com o ?, que só aceita um caractere. Logo, não lista os mesmos arquivos, e a afirmação está errada.

    Resumindo: I e II estão corretos, III e IV estão errados. Portanto, a alternativa correta é a c) I e II.
🔒
Conteúdo restrito

Cadastre-se para visualizar comentários e resoluções.

Criar conta grátis

Utilizamos cookies e tecnologias semelhantes para aprimorar sua experiência. Política de Privacidade.