Se eu estiver atribuindo uma variável com
temp=$!
qual seria o seu valor?
$!
contém o ID do processo do pipeline em segundo plano executado mais recentemente. De man bash
:
Parâmetros especiais
O shell trata vários parâmetros especialmente. Esses parâmetros podem ser referenciados apenas; a atribuição a eles não é permitida.
...
!
- Expande para o ID do processo do comando em segundo plano (assíncrono) executado mais recentemente.
Por exemplo:
$ sleep 60 &
[1] 6238
$ echo "$!"
6238
Na página de manual do Bash:
Portanto
$!
, conteria o ID do processo (PID) do último trabalho em segundo plano.Exemplo
Referências
fonte