在shell里面,经常会用到许多内部变量或者形于$*类似的位置参数,这里简单的做个列表,下次使用可以快速查询:
$BASH bash路径
$BASH_SUBSHELL 子shell层次
$DIRSTACK 目录栈中最顶端的值,与dirs命令相似
$EDITOR 脚本调用默认编辑器
$EUID 有效用户iD
$FUNCNAME 当前函数名字
$GROUPS 组iD
$HOME 用户home目录
$HOSTNAME 主机名字
$HOSTTYPE 主机类型 如x86_64
$PS1 第一提示符
$PS2 类上
$SECONDS 脚本执行时间
$SHLVL shell级别,,脚本中为2
$# 命令行参数个数或者位置参数个数
$* 所有位置参数,被看作一个单词
$@ 类似$*,没个参数是一个单独字符串
$- 传递给脚本的标记
$! 运行在后台的最后一个作业的PID
$_ 该变量保存之前执行命令的最后一个参数值
$? 脚本,命令的退出状态
$$ 脚本自身的PID
上面所列出来的变量不全,想请可以参考:http://www.tsnc.edu.cn/default/tsnc_wgrj/doc/abs-3.9.1_cn/html/internalvariables.html
上述变量可以通过$echo $变量名 来查询。
顺便提议下,如果想实现命令终端实现上次命令,除了可以用向上的方向键之外,可以用!!来实现,或者用!-1.你可以通过history查看你的命令机录,可以看到每个命令之前都有一个号,这时可以用!NO来实现号码为NO的命令,如!3就是执行第三个命令,或者可以倒着开始,如!-1代表倒数第一个,!-3代表倒数第三个。