导航:首页 > 编程语言 > shell编程括号

shell编程括号

发布时间:2025-03-29 17:14:51

linux shell ) 双括号运算符使用

估计很多朋友都感觉比较难以接受。特变逻辑运算符”[]”使用时候,必须保证运算符与算数 之间有空格。 四则运算也只能借助:let,expr等命令完成。 今天讲的双括号”(())”结构语句,就是对shell中算数及赋值运算的扩展。

使用方法:

语法:

((表达式1,表达式2…))

特点:

1、在双括号结构中,所有表达式可以像c语言一样,如:a++,b--等。

2、在双括号结构中,所有变量可以不加入:“$”符号前缀。

3、双括号可以进行逻辑运算,四则运算

4、双括号结构 扩展了for,while,if条件测试运算

5、支持多个表达式运算,各个表达式之间用“,”分开

使用实例:

扩展四则运算

复制代码

   

代码如下:

#!/bin/sh

   a=1;

   b=2;

   c=3;

   ((a=a+1));

   echo $a;

   a=$((a+1,b++,c++));

   echo $a,$b,$c

运行结果:

sh testsh.sh

2

3,3,4

双括号结构之间支持多个表达式,然后加减乘除等c语言常用运算符都支持。如果双括号带:$,将获得表达式值,赋值给左边变量。

扩展逻辑运算

复制代码

   

代码如下:

#!/bin/sh

   a=1;

   b="ab";

echo $((a1?8:9));

   ((b!="a")) echo "err2";

   ((a2)) echo "ok";

运行结果:

sh testsh.sh

9

err2

ok

扩展流程控制语句(逻辑关系式)

复制代码

   

代码如下:

#!/bin/sh

   num=100;

   total=0;

   for((i=0;i=num;i++));

   do

   ((total+=i));

   done

   echo $total;

   total=0;

   i=0;

   while((i=num));

   do

   ((total+=i,i++));

   done

   echo $total;

   if((total=5050));then

   echo "ok";

   fi

运算结果:

sh testsh.sh

5050

5050

ok

有了双括号运算符:[[]],[],test 逻辑运算,已经let,expr 都可以抛到一边了。

❷ linux shell:能从原理上给我讲讲为什么要写 ((a=$a+1))

a=3
假如不加两个括号,系统以为是字符串的形式,结果为
“3+1”,这个是字符串
加了两个括号,让系统知道了里面的值要进行运算,结果为
“4”
至于为什么加一个括号不行,是因为运算的格式就是要加两个括号
因为一个括号的格式代表其他的作用

❸ shell中单中括号和双中括号的区别

测试时,[ ]单中括号与test语句作用一样,双中括号可以支持更多的测试操作
用于正则表达式时,双中括号可以表示一类字符如[[:alpha:]]表示字母

阅读全文

与shell编程括号相关的资料

热点内容
单片机限位开关原理图 浏览:934
matlab与数学实验pdf 浏览:705
为什么网站打不开服务器内部错误 浏览:478
程序员孙玲个人资料 浏览:329
linux命令对比 浏览:518
rediscluster主从选举算法 浏览:184
深圳婚礼app哪个好 浏览:663
国际服如何上传到服务器 浏览:299
数组倒序算法 浏览:308
安卓车机音质差为什么还换 浏览:447
安卓系统如何关闭运动 浏览:521
程序员代码面试指南pdf 浏览:700
以管理员身份运行cmd命令快捷键 浏览:553
mysql加密表 浏览:266
aws轻量云服务器 浏览:292
x86反编译arm 浏览:752
服装分销哪个app好 浏览:407
php接收python数据 浏览:56
小安卓怎么找到app根目录 浏览:945
中兴路由器查看mac命令 浏览:947