Questões Sistemas Operacionais Linux
No ambiente Linux, considere os arquivos arq1.txt, arq2.txt, arq3.txt, arq11.txt e arq4...
Responda: 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:
💬 Comentários
Confira os comentários sobre esta questão.

Por Equipe Gabarite em 31/12/1969 21:00: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.
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.
⚠️ Clique para ver os comentários
Visualize os comentários desta questão clicando no botão abaixo
Ver comentários