首先要明确$符号用在什么地方,使用在不同的地方,其所代表的定义也就不同。比如在bash里$符号表示当前用户为普通用户;在bash脚本里。$开头表示变量。
以下是一些特殊变量:
1、$# 表示参数个数。
2、$0 是脚本本身的名字。
3、$1 是传递给该shell脚本的第一个参数。
4、$2 是传递给该shell脚本的第二个参数。
5、$@ 表示所有参数,并且所有参数都是独立的。
6、$$ 是脚本运行的当前进程ID号。
7、$? 是显示最后命令的退出状态,0表示没有错误,其他表示有错误。
扩展资料
bash通常运行于命令行窗口中,并能执行用户直接输入的命令。Bash还能从文件中读取命令,这样的文件称为脚本。
和其他Unix shell 一样,它支持文件名替换(通配符匹配)、here文档、命令替换、变量,以及条件判断和循环遍历的结构控制语句。
包括关键字、语法在内的基本特性全部是从shell借鉴过来的。其他特性,例如历史命令,是从csh和ksh借鉴而来。总的来说,Bash虽然是一个满足POSIX规范的shell,但有很多扩展。
shell中的特殊变量:
变量名
含义
$0
shell或shell脚本的名字
$*
以一对双引号给出参数列表
$@
将各个参数分别加双引号返回
$#
参数的个数
$_
代表上一个命令的最后一个参数
$$
代表所在命令的PID
$!
代表最后执行的后台命令的PID
$?
代表上一个命令执行后的退出状态
echo $?
这是一个shell的变量,意思是返回上一步执行任务是否成功。
如果为 0 说明执行成功。
如果非 0 说明执行失败。