Shell 双括号概述
1. 比较两个数的大小
#!/bin/bash ## 定义变量
a=
b= ## 方法1,一个方括号,需要转义
if [ $a \> $b ];then
echo "方法1:yes"
else
echo "方法1:no"
fi ## 方法2,两个小括号
if (( $a > $b )) ;then
echo "方法2:yes"
else
echo "方法2:no"
fi ## 方法3,两个方括号
if [[ $a > $b ]];then
echo "方法3:yes"
else
echo "方法3:no"
fi ## 方法4,一个方括号,gt
if [ $a -gt $b ];then
echo "方法4:yes"
else
echo "方法4:no"
fi
结果:
在bash中,若在其内使用运算符 >、>=、<、<=、==、!= 时,最好使用 (( )),有时使用[[]] 会出现一些错误。
如:
#!/bin/bash ## 定义变量
a=
b= ## 方法1,一个方括号,需要转义
if [[ $a != $b && > ]];then
echo "方法1:yes"
else
echo "方法1:no"
fi ## 方法2,一个方括号,需要转义
if (( $a != $b && > ));then
echo "方法2:yes"
else
echo "方法2:no"
fi
结果: 
Shell 双括号概述的更多相关文章
- linux shell “(())” 双括号运算符使用
导读 在刚开始学习inux shell脚本编程时候,对于它的 四则运算以及逻辑运算.估计很多朋友都感觉比较难以接受.特变逻辑运算符"[]"使用时候,必须保证运算符与算数 之间有空格 ...
- linux shell (()) 双括号运算符使用
估计很多朋友都感觉比较难以接受.特变逻辑运算符"[]"使用时候,必须保证运算符与算数 之间有空格. 四则运算也只能借助:let,expr等命令完成. 今天讲的双括号"(( ...
- 书写优雅的shell脚本(五)- shell中(())双括号运算符
在使用shell的逻辑运算符"[]"使用时候,必须保证运算符与算数之间有空格. 四则运算也只能借助:let,expr等命令完成. 今天讲的双括号"(())"结构 ...
- 双括号(()),shell与C++的桥梁
使用语法: ((表达式))用来扩展Shell中的算术运算,以及赋值运算,扩展for,while,if条件测试运算. 注意点: 1.在双括号结构中,所有的表达式可以像c语言一样,如a++,b-- 2.在 ...
- Linux Shell编程,双括号运算符(())
双括号运算符是shell非常强大的扩展. 这里简要介绍两种使用方式: 1.条件判断 跟在if.while.until,for等需要逻辑条件的命令后,进行逻辑判断 if(( expr));then … ...
- 详解shell脚本括号区别--$()、$「 」、$「 」 、$(()) 、「 」 、「[ 」]
概述 很多时候我们在写shell脚本的时候总会碰到不同的括号,那么这些不同的括号有什么区别呢? $() 用于命令交换 说明:平时脚本用的``符号也是用于命令交换的哦,和$() 的操作是一样的 ${ } ...
- [转帖]详解shell脚本括号区别--$()、$「 」、$「 」 、$(()) 、「 」 、「[ 」]
详解shell脚本括号区别--$().$「 」.$「 」 .$(()) .「 」 .「[ 」] 原创 波波说运维 2019-07-31 00:01:00 https://www.toutiao.com ...
- shell 脚本编程概述
环境变量 ? 退出状态码 (成功) (未知错误) (误用 shell 命令) (命令不可执行) (没找到命令) (无效退出状态) +x( linux 信号 X 的严重错误) ( ctrl c 终止程序 ...
- 【一通百通】Bash的单双括号建议:多用[[]], 少用[]
一. bash [ ] 单双括号 基本要素: Ø [ ] 两个符号左右都要有空格分隔 Ø 内部操作符与操作变量之间要有空格:如 [ “a” = “b” ] Ø 字符串比较中,> ...
随机推荐
- thinkphp5, 隐藏index.php
tp5官网手册里的代码有误, 注意防坑, 正确的应该是: 修改.htaccess文件: <IfModule mod_rewrite.c> Options +FollowSymlinks R ...
- Java 之包
作用: 对类文件进行分类管理, 类似于文件夹 给类提供多层命名(名称)空间 写在程序的第一行, 包名使用小写 类名的全称是: 包名.类名 包也是一种封装形式 // 示例 package mypack; ...
- 10.Query an Array-官方文档摘录
1.插入 db.inventory.insertMany([ { item: "journal", qty: 25, tags: ["blank", " ...
- Python生成器是什么
生成器是 Python 初级开发者最难理解的概念之一,虽被认为是 Python 编程中的高级技能,但在各种项目中可以随处见到生成器的身影,你得去理解它.使用它.甚至爱上它. 提到生成器,总不可避免地要 ...
- pandas(五)处理缺失数据和层次化索引
pandas用浮点值Nan表示浮点和非浮点数组中的缺失数据.它只是一个便于被检测的标记而已. >>> string_data = Series(['aardvark','artich ...
- Python Network Programming
@1: 同步网络编程(也就是阻塞方式) 同步网络编程一次只能连接一个客户端. Server端: import socket def debugPrint(name, value): print(&qu ...
- mysql binlog日志的三种模式
1.statement level模式 每一条会修改数据的sql都会记录到master的bin-log中.slave在复制的时候sql进程会解析成和原来master端执行过的相同的sql来再次执行.优 ...
- VS2013 IIS Express 无法显示站点目录列表
VS2013 默认使用IIS Express作为虚拟服务器,或许出于与安全考虑该版本的IIS Express默认关闭站点目录列表显示的功能,访问时会出现以下错误: 为了方便起见,我使用了全局设 ...
- try-catch-finally的问题
参考: https://blog.csdn.net/chengzhezhijian/article/details/17264531 面试一家公司的面试题,注: 那个面试官对这个问题挺看重的(可是我回 ...
- 【Flask】Flask-Migrate基本使用
# flask_migrate笔记:在实际的开发环境中,经常会发生数据库修改的行为.一般我们修改数据库不会直接手动的去修改,而是去修改ORM对应的模型,然后再把模型映射到数据库中.这时候如果有一个工具 ...