LINUX的bash如何给shell脚本传参数
《LINUX的bash如何给shell脚本传参数》要点: bash命令后边可以跟任意的参数,具体要如何操作? 执行“vi test.sh”创建一个新的shell脚本。 脚本test.sh的内容如下: #!/bin/sh name=$1 echo "the ${name} !" 给新建的test.sh的脚本赋可执行权限,命令为“chmod 755 test.sh”。执行可以看到结果. 如果想判断参数为空则中止执行,可以 if [ "$1" = "" ]; then echo -e "请提供参数." exit 1 fi 或: if [ $# == 0 ];then echo "没有带参数"; else echo "带了$#个参数" fi 或: if [ "$1" ];then echo "带参数"; else echo "没有带参数 " fi 上面的代码其实和使用if结构的-z参数是一样的,都是用于检测字符串是符不空值。因此也可以换成使用-z参数来判断。示例代码如下 : if [ -z "$1" ];then echo "没有带参数"; else echo "带参数" fi 详解: "name=$1"中$1为系统提供的位置参数,$0代表程序的名称,[$1/$2/...]从1开始为传递的参数。 linux系统除了提供位置参数还提供内置参数,内置参数如下: $# ----传递给程序的总的参数数目 $? ----上一个代码或者shell程序在shell中退出的情况,如果正常退出则返回0,反之为非0值。 $* ----传递给程序的所有参数组成的字符串。 $n ----表示第几个参数,$1 表示第一个参数,$2 表示第二个参数 ... $0 ----当前程序的名称 $@----以"参数1" "参数2" ... 形式保存所有参数 $$ ----本程序的(进程ID号)PID $! ----上一个命令的PID (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |