特殊状态变量
基本语法
$? 上一次命令执行状态返回值,0正确,非0失败
$$ 当前shell脚本的进程号
$!上一次后台进程的PID
$_ 取出之前执行的命令,最后一个参数
man bash
查找 Special Parameters 可以查看特殊变量
特殊变量用法
#! /bin/bash
[ $# -ne 2 ] && {
echo "必须是两个参数"
exit 119 #终止程序运行,且返回119状态吗,提供给当前shell的$?变量,若是在函数里 可以return 119 用法
}
echo "没毛病当前就2个参数"
$? 的用法 获取上一次命令执行状态返回值
[root@localhost shell]# bash specical.sh
必须是两个参数
[root@localhost shell]# echo $?
119
$$ 的用法 获取脚本的进程id
#! /bin/bash
[ $# -ne 2 ] && {
echo "必须是两个参数"
exit 119 #终止程序运行,且返回119状态吗,提供给当前shell的$?变量,若是在函数里 可以return 119 用法
}
echo "没毛病当前就2个参数"
echo "当前脚本id: $$"
$! 的用法 获取上一次后台进程id
[root@localhost shell]# nohup ping 127.0.0.1 & 1> /dev/null
[1] 37732
[root@localhost shell]# nohup: 忽略输入并把输出追加到"nohup.out"
^C
[root@localhost shell]# echo $!
37732
$_ 的用法 获取上次命令的最后一个参数
[root@localhost shell]# bash specical.sh 1 2
没毛病当前就2个参数
当前脚本id: 41864
[root@localhost shell]# echo $_
2
[root@localhost shell]#

浙公网安备 33010602011771号