shell脚本 之 declare read

本文详细介绍了bash脚本中的declare命令用于声明变量类型,以及read命令实现用户交互的功能。通过实例展示了如何在脚本中利用declare设置变量类型,并计算变量值;同时演示了read命令如何接收用户输入并执行相应的脚本命令。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

declare

核心语法:

-i 声明为整数

-a 声明未数组

-f 声明未函数

-r 声明未只读

以上是较为常用的,当然其他的可以通过 man declare 来获得

 

在默认情况下我们对于对象的声明字符串,若是希望得到数字整形类型的变量,那么就需要涉及到这次将的declare 

我们看个情况:

 

price=10

num=3

echo $price*num 

----------

10*3

 

若是申明为declare的话,那么就如下所示

inter12@inter12:/tmp$ declare -i price=10;

inter12@inter12:/tmp$ declare -i num=3;

inter12@inter12:/tmp$ declare -i total=$price*$num

inter12@inter12:/tmp$ echo $total

30

 

其实针对declare 还存在另一种方式来处理,直接来看代码

  1 #!/bin/bash

  2 #test declare and $(())

  3 

  4 

  5 userDeclare(){

  6 

  7     declare -i num=1;

  8     declare -i price=5;

  9     declare -i total=$num*$price

 10     echo 'declare style is result is ' $total;

 11 }

 12 

 13 

 14 userDouble(){

 15 

 16     num_d=1

 17     price_d=5

 18     total_d=$((num_d*price_d))

 19     echo "user double price is" $total_d

 20 }

 21 

 22 

 23 userDeclare

 24 userDouble

-----------------------------------------------

inter12@inter12:~/myshell/shell/declare$ ./test 

declare style is result is  5

user double price is 5

 

$((num_d*price_d)):代表执行其中的计算并返回结果 , 若为((num_d*price_d))则计算不返回结果,这里需要注意下!

 

交互式的命令 read 

这也是个很常用的命令,根据终端用户的不同输入,执行不同的脚本命令!

  1 #!/bin/bash

  2 

  3 echo '---------------this is the first line ---------------'

  4 echo '1.echo heihei while you selectd 1'

  5 echo '2.echo haha while you selectd 2'

  6 echo  -n 'Selections is '

  7 read selection

  8 

  9 if [ $selection = "1" ];then

 10     echo 'heihei'

 11 elif [ $selection = "2" ];then

 12     echo 'haha'

 13 else

 14    echo 'invalid option '

 15 fi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值