Welcome 微信登录

首页 / 操作系统 / Linux / Shell编程中的特殊变量之进程状态变量介绍

进程状态变量
1、$$获取当前shell的进程号(PID)
2、$!执行上一个指令的PID
3、$?获取执行上一个命令的返回值(0为成功,非零为失败,这个很常用)
4、$_在此之前执行的命令或脚本的最后一个参数
复制代码 代码如下:
cat> test$.sh
echo"$$="$$
echo"$!="$!
echo"$?="$?
echo"$@="$@
echo"$_="$_
#输出如下
sh test$.sh 1 2 3
$$=2556
$!=
$?=0
$@=1 2 3

$*和$@的区别
$*将所有的参数视为单个字符串,相当于“$1$2$3”
$@将每个参数视为单个的字符串,保留命令行中的任何空白字符
复制代码 代码如下:
set-- "I am"jane lee
fori in$*; doecho$i; done;
I
am
jane
lee
fori in$@; doecho$i; done;
I
am
jane
lee
fori in"$@"; doecho$i; done;
I am
jane
lee
fori in"$*"; doecho$i; done;
I am jane lee