《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
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。