$! is the PID of the most recent background command.
Veja esta excelente resposta para outros parâmetros especiais.
Eu tenho estudado para o meu exame Unix e muitas vezes vi uma variável de ponto de exclamação - $!
Se eu escrever echo $!
no meu shell do Mac me diz algo como "Você tem e-mail em ..."
É objetivo deste para armazenar se eu tenho ou não tem e-mails ou há outra coisa?
EDIT: Coincidência engraçada aconteceu. Exatamente quando eu escrevi echo $!
meu Shell também me avisou que eu tenho alguns e-mails. Então é por isso que escrevi essa parte da correspondência.
$! is the PID of the most recent background command.
Veja esta excelente resposta para outros parâmetros especiais.
O shell verifica se há novos e-mails depois que um comando foi concluído e $MAILCHECK
ou 600 segundos passaram.
echo $!
imprime o PID do último processo em segundo plano.
Depois disso, um cheque por correspondência pode acontecer.
$!
é substituído pelo identificador de processo do último processo colocado em segundo plano no shell atual, se houver. O bash
manual fornece detalhes de todos esses parâmetros especiais .
Para ver isso em ação:
echo $!
deve imprimir 0
(supondo que nenhum trabalho tenha sido obtido em segundo plano)
man bash &
echo $!
deve imprimir o identificador de processo do processo man
que está em segundo plano. A saída completa deve ser parecida com
$ man bash &
[1] 4319
[1] + 4319 suspended (tty output) man bash
$ echo $!
4319