“$!” é usado para? [duplicado]

3

Enquanto passa por:

info coreutils 'dd invocation'

me deparei:

dd if=/dev/zero of=/dev/null count=10MB & pid=$!

Para que $! é usado?

    
por Bleeding Fingers 22.10.2013 / 21:59

2 respostas

13

Se você está falando de Bash, eles estão na seção "Parâmetros especiais" da página man do Bash.

!      Expands to the process ID of the most recently executed background 
       (asynchronous) command.

Exemplo

$ sleep 10 &
[1] 22257

$ echo $!
22257

Seu comando

Então, com este comando:

$ dd if=/dev/zero of=/dev/null count=10MB & pid=$!

O comando dd é em segundo plano e o ID do processo resultante ( $! ) é armazenado em uma variável pid para uso após.

Referências

por 22.10.2013 / 22:06
6

$! é usado para obter o PID (identificador de processo) do comando de segundo plano mais recente.

Há também !$ :

!$ é usado para obter o último argumento para o último comando executado.

    
por 22.10.2013 / 22:09

Tags