Unix shell中的特殊变量?
我需要一个关于unixshell特殊变量(csh、ksh和bash)的好参考 e、 g.Unix shell中的特殊变量?,shell,unix,Shell,Unix,我需要一个关于unixshell特殊变量(csh、ksh和bash)的好参考 e、 g.$1,$*,$\ $1-$9这些变量是 位置参数 $0命令的名称 目前正在执行 $#位置 对此提出的论点 shell的调用 美元?服务器的退出状态 执行的最后一个命令是 以十进制字符串形式给出。当一个命令 成功完成后,返回退出状态 为0(零),否则返回非零出口 地位 $$的进程编号 此外壳-用于 包括在文件名中,以使其唯一 美元!进程的进程id 最后运行的命令 背景 $-当前选项 提供给此调用 壳的形状 $*
$1
,$*
,$\
$1-$9这些变量是
位置参数
$0命令的名称
目前正在执行
$#位置
对此提出的论点
shell的调用
美元?服务器的退出状态
执行的最后一个命令是
以十进制字符串形式给出。当一个命令
成功完成后,返回退出状态
为0(零),否则返回非零出口
地位
$$的进程编号
此外壳-用于
包括在文件名中,以使其唯一
美元!进程的进程id
最后运行的命令
背景
$-当前选项
提供给此调用
壳的形状
$*包含所有
争论的焦点
壳牌,起价1美元
$@同上,但
引用时
更多资源:
本节中的解释和示例适用于:$*
,$@
,$
,$
,$?
,$-
,$\u
,来自(带有附加$\u>变量):
$*
展开到位置参数,从一开始。当展开发生在双引号内时,它将展开为一个单词,每个参数的值由IFS特殊变量的第一个字符分隔
$@
展开到位置参数,从一开始。当展开发生在双引号内时,每个参数展开为一个单独的字
$#
扩展为十进制位置参数的数量
$?
扩展到最近执行的前台管道的退出状态
$-
连字符扩展到调用时通过set内置命令指定的当前选项标志,或由shell本身设置的选项标志(如-i)
$$
扩展到shell的进程ID
$代码>扩展到最近执行的后台(异步)命令的进程ID
$0
扩展为shell或shell脚本的名称
$\
下划线变量在shell启动时设置,并包含在参数列表中传递的正在执行的shell或脚本的绝对文件名。随后,它展开到展开后上一个命令的最后一个参数。它还被设置为执行的每个命令的完整路径名,并放置在导出到该命令的环境中。检查邮件时,此参数保存邮件文件的名称
最好的参考是POSIX标准Shell规范,特别是关于的章节。请注意csh的$?name
,如果定义了变量name
,则返回1,否则返回0。(来自Perl世界,我发现它在Unix Power Tools中非常混乱。)