*
é a expansão de nome de arquivo ou, mais geralmente, correspondência de padrões .
$*
é os parâmetros posicionais, que a documentação que você vinculou indica nos parênteses de abertura.
No bash, *
às vezes funciona como uma expansão de nome de arquivo de caractere de padrão e, às vezes, como um parâmetro de shell especial cujo valor é os parâmetros posicionais .
Como sabemos quando (em quais casos) funciona como qual?
*
é a expansão de nome de arquivo ou, mais geralmente, correspondência de padrões .
$*
é os parâmetros posicionais, que a documentação que você vinculou indica nos parênteses de abertura.
O curinga *
é uma maneira de dizer, deste ponto em diante, ou até este ponto, apenas considerar os caracteres encontrados.
Por exemplo, se eu quiser encontrar todos os arquivos terminados em .txt
no meu diretório atual. O script será:
find ./*.txt
Dessa forma, não importa como o arquivo é nomeado, se a extensão do arquivo for .txt
.
Tags bash