【Linux】shell编程,()圆括号, []方括号, {}花括号与(())双括号的使用区别

1. ( )圆括号

初始化数组使用圆括号;
命令组,将一系列命令用空格隔开;
命令替换,使用$ 美元符,将命令进行嵌套使用;(有点儿类似于管道符作用的感觉)

arr=(1 2 3 4 5)

2. [ ]方括号

搭配美元符$,用于整型计算;
数组默认使用方括号提取对应下标的元素
test命令的简写形式就是方括号[ ],而且方括号包围的命令两侧必须有空格隔开。用于if条件语句中;

var1=10	#变量var1,var2
var2=20
var3=$[ var1+var2+2 ]; 	#输出运算结果:32
var3=$[ $var1+$var2+2];	#输出:32
arr=(1 2 3)
echo ${arr[1]};	#输出:2
#!/bin/bash	
var1=10
var2=20
if [ $var1 -gt $var2 ]
then
	echo hello linux world!
else
	echo study linux now!
fi

输出:study linux now!

3. { }花括号

用于需要变量和字符串组合输出时,变量后拼接字符串。包住变量,避免歧义

var1=10	#变量var1
echo $var11; 	#未识别变量var11
echo ${var1}1;	# 101,其中10是变量var1的值,1为后续字符串
arr = (1 2 3)	#数组arr
echo $arr; 	#输出数组第一个元素:1
echo $arr[1];	#输出数组第一个元素和后续:1[1]
echo ${arr[1]};	#输出数组下标为1的元素:2,数组下标从0开始
echo $arr[*]; 	#输出第一个元素和后续:1[*]
echo ${arr[*]};	#避免歧义,输出数组中的全部元素:1 2 3

4. (())双括号

使用高级数学表达式,也可与美元符号搭配,用于整型数据计算。使用高级数学表达式时,内部不使用美元符时未报错。

var1=10	#变量var1,var2
var2=20
var3=$((var1+var2))		#输出30
var4=$(($var1+$var2))	#输出30
var5=((var1+var2))  	报错
var6=((var1+var2))  	报错

其他测试结果

j=1
echo j #输出j
echo $j	 #输出1
k=j+1
echo $k	 #输出j+1
k=(j+1)
echo $k	 #输出j+1
k=$j+1
echo $k	 #输出1+1
k=($j+1)
echo $k	 #输出1+1
k=$((j+1))
echo $k	 #输出2
k=$(j+1)
echo $k	#报错:j+1:未找到命令
  • 7
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值