Shell编程学习(3) |
您所在的位置:网站首页 › linux脚本参数 › Shell编程学习(3) |
1、脚本参数
什么是脚本参数? 我们在linux中运行脚本的时候可以在脚本名后面加上一些参数,这些参数叫做脚本的位置参数,也叫作程序参数,我们简单的将其认为是脚本运行时,传递给脚本程序的参数。 看个例子,我们写了一个脚本scp1.sh,我们在chmod u+x scp1(赋予uer执行脚本的权限之后),./scp1来运行脚本,这个时候如果这个脚本后面需要加一些参数,例如:./scp1 a b c ,这里的a b c就是传递的三个参数。常用的一些参数有关符号? $0:表示的是程序名字 $n n属于(1-9):表示的是第1-9个参数, 第9个之后的参数用${ 10}、${ 11}来表示 $*,$@:两个表示的都是所有的参数 $#:表示的是传递的参数的个数 $? 命令执行后返回的状态,返回状态为“是”,返回0,返回状态为“否”,返回1 $! 后台运行的最后一个进程号 $$ 当前进程号一个例子看懂: 例:demo_arg程序如下 #! /bin/bash echo “程序名: $0” echo “命令传递参数个数:$#” echo “参数值分别是:$1 $2 $3 $4 $5 $6 $7 $8 $9” echo “所有参数: $@” exit 0 [root@localhost root]# demo_arg a b c d e f g h i 程序名:demo_arg 命令传递参数个数: 9 参数值分别是: a b c d e f g h i 所有参数: a b c d e f g h ishift命令 格式:shift [n] 之前我们介绍了可以使用${10}这样的格式来使用第10个及之后的参数,我们同样也可以通过shift命令来使用第九个之后的参数。 功能:把命令行参数向左移动N个位置 看一个例子: 例: demo_shift程序如下 #! /bin/bash echo “程序名:$0” echo “所有参数: $@” echo “前三个参数:$1 $2 $3” shift echo “程序名:$0” echo “所有参数: $@” echo “前三个参数:$1 $2 $3” shift 3 echo “程序名:$0” echo “所有参数: $@” echo “前三个参数:$1 $2 $3” exit 0 [root@localhost root]# demo_shift 1 2 3 4 5 6 7 8 9 10 11 12 结果: 程序名: demo_shift 所有参数: 1 2 3 4 5 6 7 8 9 10 11 12 前三个参数:1 2 3 程序名: demo_shift 所有参数: 2 3 4 5 6 7 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |