Sup*_*007 13 shell environment-variables variable
我一直在为我的 Unix 考试而学习,我经常看到感叹号变量 -$!
如果我echo $!
在 Mac shell 上写下诸如“你有邮件……”之类的信息
这样做的目的是存储我是否有任何邮件或还有其他东西吗?
编辑:有趣的巧合发生了。就在我写echo $!
我的 Shell 时,也通知我我有一些邮件。所以这就是我写邮件部分的原因。
$!
如果有,则由放置在当前 shell 中的后台的最后一个进程的进程标识符替换。该bash
手册提供了所有此类特殊参数的详细信息。
要查看此操作:
echo $!
Run Code Online (Sandbox Code Playgroud)
应该打印0
(假设没有作业被后台处理)
man bash &
echo $!
Run Code Online (Sandbox Code Playgroud)
应该打印man
后台进程的进程标识符。完整的输出应该看起来像
$ man bash &
[1] 4319
[1] + 4319 suspended (tty output) man bash
$ echo $!
4319
Run Code Online (Sandbox Code Playgroud)