4.shell脚本基础笔记-shell变量的位置参数
hi,我是温新,一名PHPer
位置参数
位置参数概述
shell脚本可以像普通命令一样接收参数。
在脚本中用于读取命令行参数的变量就叫位置参数。
位置参数变量
位置参数变量是从$1
到$9
,分别代表着第1到第10个位置的参数值。这10个变量是定义好的,直接使用即可。
如果有第11个参数
,则使用${10}
进行接收。
位置参数案例
1)arg.sh
#!/bin/bash
echo arg is : $1 $2 $3 $4 $5 $6 $8 $9 ${10} ${11}
2)执行脚本
sh arg.sh 11 22 33 44 55 66 77 88 99 1010 1111
特殊参数
在 shell 中有具有特殊含义的变量,如$1~$9等,这些就是特殊参数。
变量 | 含义 |
---|---|
$0 | 当前脚本的文件名 |
$n (n≥1) | 传递给脚本或函数的参数 |
$* | 所有参数。如'a b c' |
$@ | 所有参数。如'a' 'b' 'c' |
$# | 传递参数的总数 |
$? | 上个命令退出的状态 |
$$ | 当前进程ID |
$! | 最后启动的后台命令的进程ID |
declare 声明变量
在 shell脚本基础笔记-shell变量 这篇文章中记录了变量声明与使用。除此之外,还可以使用declare
或者typeset
内置命令显示声明变量。
declare 声明变量
declare [选项] 变量名
declare [选项] 变量名=值
# 选项
-r 声明只读变量
-i 声明整型变量
-a 声明数组变量
-A 声明关联数组变量
注意:如没有执行 选项,则变量类型为字符串。
只读变量
使用declare
的-r
选项,将变量声明为只读。
# 方式一
name=ziruchu
declare -r name
# 将变量声明为只读后重新赋值会报错
name=php
-bash: name: readonly variable
# 方式二
declare -i age=19
age=20
echo $age
# 方式三 使用readonly设置只读变量
a=lisi
readonly a
整型变量
整型变量的声明,使用-i
选项。
# 方式一
declare -i num
num=1
# 方式二
declare -i num=10
1)数字字符串相关的结果
sum=10+10
echo $num # 10+10
默认声明的变量是字符串类型,因此并不会执行加法运算,而是执行了拼接的运算。
2)数值相加,可先声明变量为整型
declare -i sum
sum=10+20
echo $sum # 30
3)整型变量的声明与赋值
declare -i sum=11+9
echo $sum
4)变量赋值时不需要使用$
x=5
y=5
declare -i sum=x+y
echo $sum # 10
变量一旦声明为整型时,每次对其赋值时,右边都会被当作数学算式计算。
我是温新
每天进行一步点,就一点点
请登录后再评论