Bash条件字符串和整数一起

豪猪

我正在尝试在语句中同时进行整数和字符串比较,如下所示:

$ TimeHr=$(date +%_H)
$ Time=Night
$ echo TimeHr
1

$ if ((TimeHr>18 || TimeHr<5 )) && [ Time == "Night" ]; then echo "Night Time"; else echo "Day Time"; fi
Day Time

$ if ((TimeHr>18 || TimeHr<5 )) && [[ Time == "Night" ]]; then echo "Night Time"; else echo "Day Time"; fi
Day Time

但是它没有打印正确的if分支。我应该如何修改它?


编辑:

我更喜欢将其((用于数值比较,因为代码看起来更容易理解。

斯蒂芬·哈里斯(Stephen Harris)

我将两个条件合并为一个

if [[ ( $TimeHr -gt 18 || $TimeHr -lt 5 ) && $Time == "Night" ]]; then echo "Night Time"; else echo "Day Time"; fi
Night Time

但是,您的原始测试有一个简单的错误;[and[[测试中,您需要使用$variable而不仅仅是variable

所以

if ((TimeHr>18 || TimeHr<5 )) && [[ $Time == "Night" ]]; then echo "Night Time"; else echo "Day Time"; fi

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Bash将字符串和整数一起作为多条件进行比较

BigQuery将字符串和整数/时间戳连接在一起?

在 Django 选择字段中一起使用整数和字符串

从 json 一起打印整数和字符串值

Dart:将整数与字符串一起打印

为什么Python无法将整数和字符串一起打印而不进行转换?

扫描字符串,然后将它们与整数一起打印

如何将字符串数组转换为整数以与 Highcharts 一起使用

有条件地将字符串粘贴在一起

Java 8流是否只是不打算与字符和字符串一起使用?

在字符串中一起使用一个反斜杠和引号

创建一个将bash中另一个文件中的字符串和值连接在一起的文件

将数字和字符串排序在一起,其中字符串是可以后跟字母的数字

不能使字符串相等方法和将字符串转换为数字一起工作。

如何一起创建字符串和字节的多维数组

如何在Python中从json文件中一起调用变量和字符串?

如何将findIndex与字符串和对象一起使用

toObjectId用于将字符串的字段与查找和聚合一起使用

Typeahead的奇怪行为-搜索字符串和结果一起返回

在Scala中一起支持引号和字符串替换

替换字符串和方括号不能与RegExp一起使用

如何在C#中一起返回字符串和元素列表?

在React中将字符串类名称与CSS-loader和Webpack一起使用

快速字符串似乎一起处理回车符和换行符

将`RangeFull`语法与字符串和`Borrow`一起使用

将min()和max()函数与多个字符串一起使用

在R中一起使用强制转换和拆分字符串函数

在Hive中将字符串与日期和时间一起转换为日期

python:一起返回布尔值和字符串的错误