您的位置:首页 > 运维架构 > Shell

总结linux环境几个特殊的shell变量

2011-07-29 11:55 375 查看
总结linux环境几个特殊的shell变量

########################

总结几个特殊的shell变量:

########################

############################################################

#

#http://hi.baidu.com/xece/modify/blog/75327e382149dae23b87ce5a

############################################################

特殊的shell变量:

$0 获取当前执行的shell脚本的文件名

$n 获取当前执行的shell脚本的第n个参数值,n=1..9

$* 获取当前shell的所有参数 “$1 $2 $3 …注意与$#的区别

$# 获取当前shell命令行中参数的总个数

$$ 获取当前shell的进程号(PID)

$! 执行上一个指令的PID

$? 获取执行的上一个指令的返回值(0 为成功, 非零为失败)

$@ 这个程序的所有参数 “$1″ “$2″ “$3″ “…”

举例(通过脚本举例,大家也可以一行行执行测试):

[ryan@etiantian test]# cat etiantian.sh

echo ‘$0 获取当前执行的shell脚本的文件名:’ $0

echo ‘$n 获取当前执行的shell脚本的第n个参数值,n=1..9:’ ‘$1′=$1 ‘$2′=$2 “\$3=$3″

echo ‘$* 获取当前shell的所有参数 “$1 $2 $3 …注意与$#的区别:’ $*

echo ‘$# 获取当前shell命令行中参数的总个数:’ $#

echo ‘$$ 获取当前shell的进程号(PID):’ $$

sleep 2 &

echo ‘$! 执行上一个指令的PID :’ $!

echo ‘$? 获取执行的上一个指令的返回值 :’ $?

echo ‘$@ 这个程序的所有参数 “$1″ “$2″ “$3″ “…” :’ $@

脚本执行结果(大家仔细看):

[ryan@etiantian test]# sh etiantian.sh 参数1 参数2 参数3

$0 获取当前执行的shell脚本的文件名: etiantian.sh

$n 获取当前执行的shell脚本的第n个参数值,n=1..9: $1=参数1 $2=参数2 $3=参数3

$* 获取当前shell的所有参数 “$1 $2 $3 …注意与$#的区别: 参数1 参数2 参数3

$# 获取当前shell命令行中参数的总个数: 3

$$ 获取当前shell的进程号(PID): 2062

$! 执行上一个指令的PID : 2063

$? 获取执行的上一个指令的返回值 : 0

$@ 这个程序的所有参数 “$1″ “$2″ “$3″ “…” : 参数1 参数2 参数3

[ryan@etiantian test]# sh etiantian.sh ryan jeacen david

$0 获取当前执行的shell脚本的文件名: etiantian.sh

$n 获取当前执行的shell脚本的第n个参数值,n=1..9: $1=ryan $2=jeacen $3=david

$* 获取当前shell的所有参数 “$1 $2 $3 …注意与$#的区别: ryan jeacen david

$# 获取当前shell命令行中参数的总个数: 3

$$ 获取当前shell的进程号(PID): 2160

$! 执行上一个指令的PID : 2161

$? 获取执行的上一个指令的返回值 : 0

$@ 这个程序的所有参数 “$1″ “$2″ “$3″ “…” : ryan jeacen david
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: