Shell中的特殊变量

shell的特殊变量,用在如脚本,函数传递参数使用,有如下特殊的,位置参数变量

特殊参数变量
$0		获取shell脚本文件名
$n		获取shell脚本的第n各参数,n在1~9之间,如$1,$2,$9,大于9则需要写,${10},参数空格隔开
$#		获取执行的shell脚本后面的参数总个数
$*		获取shell脚本所有参数,不加引号等同于$@作用,加上引号"$*"作用是接收所有参数为单个字符串,"$1 $2..."
$@		不加引号,效果同上,加上引号,是接收所有参数为独立字符串,如"$1" "$2" "$3" ...,空格保留

例子:

#! /bin/bash
echo '特殊变量 $1 $2 $3 ...的实践'
echo '结果' $1 $2 $3

echo '##########################'
echo '特殊变量 $# 获取参数个数'
echo '结果' $#

echo '##########################'
echo '特殊变量$* 实践'
echo '结果' $*
 
echo '##########################'
echo '特殊变量$@ 实践'
echo '结果' $@

在这里插入图片描述

特殊状态变量
$?	上一次命令执行状态返回值,0正确,非0失败
$$	当前shell脚本的进程号
$!	上一次后台进程的id	
$_	再次之前执行的命令,最后一个参数

查找方式	man	bash
	搜索Special Parameters

脚本返回值,学习shell函数编程之后,才能彻底理解
这个脚本执行完毕了,会返回一个数字id,称之为返回值

#! /bin/bash
# $#获取参数个数        -ne不等于的情况 && 并且
[ $# -ne 2 ] && {
        echo "must be two args"
        exit 119 #终止程序运行,且放回119状态码,提供给当前shell的$?变量,若是在函数里 可以return 119
用法
}
echo "没毛病,是两个参数"

![](https://img-blog.csdnimg.cn/681221c80b4e4a61865b3df1f4c9b4ac.pn
获取上一次后台执行的程序,pid,
在这里插入图片描述
获取当前的脚本id
在这里插入图片描述
在这里插入图片描述
获取上一个命令最后一个参数
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值