A variável $$
no bash e outras shells contém o id do processo do shell.
Veja esta pergunta de estouro de pilha e este também tem mais detalhes sobre o que é mais precisamente e comandos semelhantes a ele.
O que significa a saída do comando abaixo? (resultado é um inteiro positivo)
echo $$
Como a outra resposta (aceita) indicou, o $ param representa o ID do processo atual (PID) do shell atual.
Ecoando este param deve funcionar na maioria dos shells (não apenas no Bash):
Bash:
$ echo $0
bash
$ echo $$
6780
Bourne:
$ echo $0
sh
$ echo $$
6988
C-Shell:
% echo $shell
/bin/csh
% echo $$
7613
É importante notar também que os comandos de dentro do shell serão executados sob o
$ echo $$
6780
$ ps -ef | grep 6780
aploetz 6780 6770 0 11:15 pts/2 00:00:00 bash
aploetz 8572 6780 0 11:34 pts/2 00:00:00 ps -ef
aploetz 8573 6780 0 11:34 pts/2 00:00:00 grep --color=auto 6780
Tags command-line