Presumo que você esteja esperando que um resultado seja retornado:
# ls ?tc
etc
mas você realmente obteve vários resultados.
O ponto de interrogação é um caractere globbing , conforme definido por:
?
wild card. The
?
character serves as a single-character "wild card" for filename expansion in globbing, as well as representing one character in an extended regular expression.
O que aconteceu é que o curinga foi expandido pelo shell (provavelmente bash
) antes de ser passado para ls
1 . Então ls
tratou como:
# ls etc
O que teria retornado os muitos arquivos e pastas 2 'de /etc
.
1 : Você pode testar que a expansão acontece antes um comando é executado tentando: echo *
- isto irá (deve!) ecoar os arquivos e diretórios em o diretório atual.
2 : Se você quiser se familiarizar com a linha de comando, prefira o termo 'diretório' para 'pasta' : -)