1
resposta

não mostra meus

eu criei os arquivos "arq223", "arq101", "arq007''

mas quando eu uso o "ls arq[1-300]" mostra somente

arq1 arq2 arq3 arq5

não mostra os "arq223", "arq101", "arq107'', o que teria de errado?

1 resposta

Olá, Washington!

Parece que você está se aventurando no mundo do Globbing no Linux, isso é ótimo! Vamos tentar esclarecer sua dúvida.

O comando que você está usando, "ls arq[1-300]", não está funcionando como esperado porque a expressão entre colchetes [ ] no Globbing não funciona como um intervalo numérico, mas sim como um intervalo de caracteres.

Ou seja, quando você digita "ls arq[1-300]", o shell não interpreta isso como "me mostre todos os arquivos que começam com 'arq' seguidos de um número entre 1 e 300". Em vez disso, ele tenta combinar os caracteres individuais entre os colchetes.

Nesse caso, como você colocou "1-300", o shell está tentando combinar qualquer arquivo que comece com 'arq' e tenha um caractere adicional que seja '1', '-', '3', '0' ou '0' (note que '0' foi repetido). Portanto, não está funcionando como você esperava.

Se você quiser listar todos os arquivos que começam com 'arq', você pode simplesmente usar o comando "ls arq*". O asterisco (*) aqui atua como um coringa, substituindo qualquer número de caracteres.

Então, se você quiser listar todos os arquivos que começam com 'arq' seguidos de qualquer número, você pode usar "ls arq[0-9]*". Isso irá combinar qualquer arquivo que comece com 'arq' seguido de pelo menos um dígito e possivelmente mais caracteres.

Espero ter ajudado e bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software