linux双括号文本比较,Linux Shell 双括号运算符使用
作者:程默
网址:http://www.cnblogs.com/chengmo/archive/2010/10/19/1855577.html
在刚开始学习inux 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 $((a>1?8:9));
((b!="a"))&& echo "err2";
((a<2))&& 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双括号文本比较,Linux Shell 双括号运算符使用相关推荐
- 在c语言中逗号运算符若不带括号,详解shell脚本括号区别--$()、$「 」、$「 」 、$(()) 、「 」 、「[ 」]...
概述 很多时候我们在写shell脚本的时候总会碰到不同的括号,那么这些不同的括号有什么区别呢? $() 用于命令交换 说明:平时脚本用的``符号也是用于命令交换的哦,和$() 的操作是一样的 ${ } ...
- linux shell 双引号 单引号 使用推荐
output linux shell 双引号 单引号 使用推荐 input alias使用双引号还是单引号? 鸟哥-鸟哥的Linux私房菜 基础学习篇 3ed|301 algo 引号主要用于处理空格分 ...
- Linux创建线程读取双口数据,linux环境下读写一次双口ram尽然要十几个毫秒。(附驱动代码)...
linux环境下读写一次双口ram尽然要十几个毫秒.(附驱动代码) 我用的双口ram是IDT70V28,手册上说的读写时间应该是几个纳秒,我写了个linux驱动,然后做测试,发现读写一次的时间尽然是十 ...
- linux双系统 删一个,双系统删除linux
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 双系统删除linux系统2008-10-12 00:27方法一: 我们知道在xp里一个很好的分区工具--PQ(partition magic),但在双系统 ...
- linux 生成密码本,Linux下CentOS7使用OTPW实现双因子密码本登录
otpw优点: 1.前缀密码+一次性随机码,相当于双重加密.就算随机码列表泄露,没有前缀密码也是无法登录. 2.如果一次没登录成功,会启用三重随机码. 3.用户目录下保存密码的文件可通用,适合批量部署 ...
- linux和windows启动,Linux和Windows双系统的启动
问题 Linux和Windows双系统的启动 解决方案 在某些特殊情况下,服务器可能要安装双系统 一个linux系统,一个windows系统 这种情况下,安装顺序是,先装Windows系统,后装Lin ...
- 把双系统的linux删除,双系统删除linux
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 双系统删除linux系统2008-10-12 00:27方法一: 我们知道在xp里一个很好的分区工具--PQ(partition magic),但在双系统 ...
- win10 linux 修复引导菜单,win10 + Ubuntu16.04双系统修复linux grub引导丢失
安装双系统 引导修复 1 在Ubuntu中将引导记录写入 boot 2 一波三折grub中的win10启动项又丢了 1. 安装双系统 win10 + Ubuntu16.04 双系统安装流程: 首先安装 ...
- 双系统在linux中修复引导文件,Linux与Windows双系统引导修复
一台电脑装有XP和Linux双系统,因为重装XP,导致再无法进入Linux. 原因很简单,因为重装XP,XP会把自己的引导文件写入MBR(硬盘主引导记录),这样就把原先带有Linux引导的记录摸掉了, ...
最新文章
- java持续集成soapui_集成testNG到JavaAPI测试-执行多条用例
- 基于 WebRTC 实现自定义编码分辨率发送
- jdbc mysql数据类型对比 (版本: 5.1)
- python画一个祝福别人生日快乐_生日贺卡祝福语(精选50条)
- rip协议的V1和V2的更新机制
- 网站服务器睡眠后还能访问吗,远程服务器可以睡眠吗
- django-模板的功能与配置
- 编译android 7.1 jdk版本,ubuntu14.04 安装 open-jdk-1.8,下载编译 android nougat 7.1.1
- Python4班平均成绩统计_回首过去,展望未来 | 欢迎大家来到E班第一次主题班会!...
- 新兴的人工智能服务器,5个新兴人工智能物联网应用
- Java011-多线程
- mysql 总分区表限制_MySQL分区表的局限和限制详解
- 迅捷音频转换器怎么使用?
- python barplot宽度,如何在seaborn barplot上设置宽度
- Git Conventional Commits (Git代码提交说明规范)
- 项目经历怎么写_简历里的项目经历怎么写才能打动招生官和面试官?
- 如何高效地做设计评审
- 合伙开公司要如何规避风险
- uniapp开发app真机调试连接电脑服务器请求失败解决方法
- 无线电能传输LCL-S拓扑/WPT MATLAB/simulink仿真模型 (模型左边为两电平H桥逆变器,LCL-S串联谐振,右边不可控整流结构)
热门文章
- OpenCV-寻找轮廓cv::findContours绘制轮廓cv::drawContours
- pm2.5测试软件,测pm2.5的软件准吗
- 想成为测试工程师,这7件事你必须先知道
- linux 版本号 加号,Linux kernel编译生成的版本多一个加号“+”
- python颜色表_Python:数据可视化,必须注意的30个小技巧
- 合肥一六八2021高考成绩查询,合肥高考成绩查询入口
- pycharm出现KeyError:“Couldn't find filed google.ptotobuf.FileOption.javanano_use_deprecated_package”
- linux配置sonarqube遇到的坑
- 面试必问的 Linux 命令帮你整理好啦 (下)
- 分享前几年的外包经历,给正在犹豫要不要去外包的学弟学妹做参考.