Created
March 11, 2013 07:41
-
-
Save shijinkui/5132586 to your computer and use it in GitHub Desktop.
几个特殊的shell变量
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
特殊的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 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment