shell编程 特殊变量–进程状态变量

Linux就该这么学

进程状态变量

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

本文由 CentOS中文站 - 专注Linux技术 作者:centos 发表,其版权均为 CentOS中文站 - 专注Linux技术 所有,文章内容系作者个人观点,不代表 CentOS中文站 - 专注Linux技术 对观点赞同或支持。如需转载,请注明文章来源。

相关文章

发表评论

邮箱地址不会被公开。 必填项已用*标注