저는 Unix 시험 공부를 하고 있는데 느낌표 변수가 계속 보입니다. Mac 셸에서 글을 $!
쓰면 echo $!
"메일이 있습니다..."와 같은 메시지가 나타납니다.
이것의 목적은 이메일이 있는지 또는 무엇을 저장하는 것입니까?
편집하다:흥미로운 우연의 일치가 일어났습니다. 내가 글을 쓰고 있는 동안에도 echo $!
내 쉘에서는 메일이 도착했다는 알림을 받았습니다. 그래서 이메일의 일부를 썼습니다.
답변1
$! 가장 최근의 백그라운드 명령의 PID입니다.
바라보다이 훌륭한 답변다른 특수 매개변수의 경우.
답변2
$MAILCHECK
명령이 완료되거나 600초가 경과한 후 쉘은 새 메일을 확인합니다.
echo $!
마지막 백그라운드 프로세스의 PID를 인쇄합니다. 그 후 메일을 확인할 수 있습니다.
답변3
$!
현재 셸에 있는 마지막 백그라운드 프로세스의 프로세스 식별자로 대체됩니다(있는 경우). 이것bash
수동이러한 모든 특수 매개변수에 대한 세부정보를 제공하세요.
실제로 작동하는 모습을 보려면:
echo $!
인쇄해야 함 0
(백그라운드 작업이 없다고 가정)
man bash &
echo $!
man
백그라운드 프로세스의 프로세스 식별자가 인쇄되어야 합니다. 전체 출력은 다음과 같아야 합니다.
$ man bash &
[1] 4319
[1] + 4319 suspended (tty output) man bash
$ echo $!
4319