De acordo com a página man bash:
o bash verifica cada palavra para o caracteres *,? e [. Se um dos esses caracteres aparecem, então o a palavra é considerada como um padrão, e substituído por um classificado alfabeticamente lista de nomes de arquivos correspondentes ao padrão
e do nó de informações para ls
O programa 'ls' lista informações sobre arquivos (de qualquer tipo, incluindo diretórios). Opções e arquivo argumentos podem ser misturados arbitrariamente, como de costume.
Para linha de comando não opcional argumentos que são diretórios, por o padrão 'ls' lista o conteúdo de diretórios, não recursivamente, e omitindo arquivos com nomes começando com '.'. Para outra não opção argumentos, por padrão listas 'ls' apenas o nome do arquivo. Se não houver opção argumentos são especificados, listas 'ls' o conteúdo do diretório atual.
Quando você der ls d*
, d * será expandido para a lista classificada de todos os nomes de arquivos / diretórios começando com d. Então você comanda se torna
ls dump
e como dump é um nome de diretório, você obtém a listagem de todos os arquivos no diretório "dump '
mas quando você der ls D*
, D * é expandido para " Documentos de Desktop Downloads Dropbox ", então o comando se torna
ls Desktop Documents Downloads Dropbox
e como todos esses são diretórios, você obtém a listagem de arquivos no diretório individual. Se houvesse um arquivo começando com D no diretório atual, ele teria sido listado separadamente.