Shell脚本的参数传递

来源:互联网 发布:招警考试软件 编辑:程序博客网 时间:2024/05/22 17:50

在许多的情况下,Shell脚本都需要接受用户的输入,根据用户的输入参数来执行不同的操作。本节内容主要介绍Shell脚本的参数,以及如何在脚本中接收参数。

Shell脚本的参数

从命令行传递给Shell脚本的参数又称为位置参数,这主要是因为Shell脚本会根据参数的位置来接受它们的数据。在Shell脚本的内部,用户可以通过一系列的系统变量来获取参数。这些变量的名字都是固定的,并且简单。下面列出了常用的与参数传递有关的系统变量。

变量名 说明 $n 表示传递给脚本的第n个参数 $# 命令行参数的个数 $0 当前脚本的名称 $* 以”参数1 参数2 参数3 …..”的形式返回所有的数据 $@ 以”参数1” “参数2”“参数3” …..”的形式返回所有的数据 $? 保存程序最后一条命令的退出状态

注意: 对于包含空白字符或者其他的特殊字符的参数,需要使用单引号或者双引号进行传递。

Shell程序

Shell脚本

#! /bin/bashecho " $# parameters  "echo ' $@ is' "$@ "echo ' $* is' "$* "echo ' parameters $0 is ' "$0"echo ' parameters $1 is ' "$1"echo ' parameters $2 is ' "$2"

Shell脚本的运行结果

 3 parameters   $@ is a b c  $* is a b c  parameters $0 is  2.sh parameters $1 is  a parameters $2 is  b

Shell脚本的返回值$?

[root@***]# echo $?0
1 0