|NO.Z.00048|——————————|LinuxShell|——|Linux&Shell$变量.V05|——|位置参数变量|

一、位置参数变量
  作用
$n n为数字,01-9{10}
$* 这个变量代表命令行中所有的参数,$*把所有的参数看成一个整体
$@ 这个变量也代表命令行中所有的参数,不过$@把每个参数区分对待
$# 这个变量代表命令行中所有参数的个数
二、位置参数变量实验
### --- 创建位置参数变量脚本

[root@localhost sh]# vi count.sh
!/bin/bash
Author: shenchao (E-mail: shenchao@atguigu.com)
num1=$1
# 给 num1 变量赋值是第一个参数
num2=$2
# 给 num2 变量赋值是第二个参数
sum=$(( $num1 + $num2))
# 变量 sum 的和是 num1 加 num2
# Shell 当中的运算还是不太一样的,我们 Shell 运算符小节中详细介绍
echo $sum
# 打印变量 sum 的值
### --- 位置参数变量脚本说明
~~~     那么还有几个位置参数变量是干嘛的呢?我们在写个脚本来说明下:

[root@localhost sh]# vi parameter.sh
!/bin/bash
Author: shenchao (E-mail: shenchao@atguigu.com)
echo "A total of $# parameters"
# 使用$#代表所有参数的个数
echo "The parameters is: $*"
# 使用$*代表所有的参数
echo "The parameters is: $@"
# 使用$@也代表所有参数
三、对待接收到的所有参数区分说明
### --- 对待接收到的所有参数区分说明
~~~     那么“$*”和“$@”有区别吗?还是有区别的,$*会把接收的所有参数当成一个整体对待,
~~~     而$@则会区分对待接收到的所有参数。还是举个例子:

[root@localhost sh]# vi parameter2.sh
!/bin/bash
 Author: shenchao (E-mail: shenchao@atguigu.com)
for i in "$*"
# 定义 for 循环,in 后面有几个值,for 会循环多少次,
# 注意“$*”要用双引号括起来每次循环会把 in 后面的值赋予变量 i 
# Shell 把$*中的所有参数看成是一个整体,所以这个 for 循环只会循环一次
do
echo "The parameters is: $i"
# 打印变量$i 的值
done
x=1
# 定义变量 x 的值为 1
for y in "$@"
# 同样 in 后面的有几个值,for 循环几次,
# 每次都把值赋予变量 y可是 Shell 中把“$@”中的每个参数都看成是独立的,
# 所以“$@”中有几个参数,就会循环几次
do
echo "The parameter$x is: $y"
# 输出变量 y 的值
x=$(( $x +1 ))
# 然变量 x 每次循环都加 1,为了输出时看的更清楚
done

 
 
 
 
 
 
 
 
 

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
                                                                                                                                                   ——W.S.Landor

 

posted on   yanqi_vip  阅读(18)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示