Um ponto nesse contexto significa "originar" o conteúdo desse arquivo no shell atual. Com source
sendo um comando interno do shell. E source
e o operador ponto sendo sinônimos.
Exemplo
Digamos que eu tenha o seguinte conteúdo em um arquivo sample.sh
.
$ cat sample.sh
echo "hi"
echo "bye?"
Agora, quando eu faço isso:
$ . sample.sh
hi
bye?
$
Arquivos como este geralmente são usados para incorporar comandos de configuração, como adicionar itens às variáveis de ambiente.
Exemplos
Digamos que eu tenha esses comandos em outro arquivo, addvars.sh
.
$ cat addvars.sh
export VAR1="some var1 string"
export VAR2="some var2 string"
Note que não tenho nenhuma variável no ambiente atual do meu shell.
$ env | grep VAR
$
Agora, quando eu source este arquivo:
$ . addvars.sh
$
OK, parece que não fez nada, mas quando verificamos novamente as variáveis env
:
$ env | grep VAR
VAR1=some var1 string
VAR2=some var2 string