Oi Willian, tudo bem?
Entendo que você está com dúvidas sobre o uso da filtragem de arquivos no Linux, especificamente sobre o comando ls arq[1,5,100]
.
Para entender o que está acontecendo, é importante lembrar que quando usamos colchetes ([]), estamos especificando um conjunto de caracteres. No seu caso, ls arq[1,5,100]
está pedindo para o sistema listar todos os arquivos que começam com 'arq' seguidos por um dos caracteres '1', '5', '0' ou '0'. Isso significa que o comando não está interpretando '100' como um número único, mas sim como três caracteres separados.
Se você quiser listar o arquivo 'arq100', você precisa especificar isso diretamente, ou seja, ls arq100
. Se você quiser listar todos os arquivos que começam com 'arq' seguidos por um ou dois dígitos, você pode usar ls arq?
ou ls arq??
, respectivamente. O caractere '?' representa qualquer caractere único.
Em relação ao seu questionamento sobre o range, quando você usa ls arq[1-100]
, o que acontece é que o shell interpreta isso como "listar todos os arquivos que começam com 'arq' seguidos por qualquer caractere no range de '1' a '1' ou '0' a '0'". Isso acontece porque, como mencionado anteriormente, o shell não está interpretando '100' como um número único, mas sim como três caracteres separados.
Um abraço e bons estudos.