比较 MAC OSX 中 Bash 中的两个日期

2024-03-22

我是 Bash 新手,提前道歉。


Set-up

我有一个特定的结束日期end这取决于特定的开始日期s和周期长度p这样,end=s+p.


Problem

当且仅当今天的日期早于或等于结束日期时,我想执行命令。

即:执行命令iffdate ≤ end.


Code

s='20/09/2017'
p='1'
end=$( date -j -v +"$p"d -f "%d/%m/%Y" "$s")

if [[ date < “$end” ]];
then
   echo 'ok'
fi

有两件事不应该是这样的,

  1. p=1暗示end = '21/09/2017' < date = '26/09/2017',但我仍然得到ok.
  2. I use date < “$end”但我想要date ≤ “$end”

1和2如何修正?


当您将日期格式化为YYYYMMDD您可以简单地使用字母数字比较:

start=$(date +'%Y%m%d')
end=$(date +'%Y%m%d')

# -gt means greater than - for example.
# check `help test` to get all available operators
if [ $start -gt $end ] ; then ...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

比较 MAC OSX 中 Bash 中的两个日期 的相关文章

随机推荐

  • 调用 Task.Result 时出现 ThreadAbortException

    我有以下代码 我尝试使用以下命令向远程端点发出请求HttpClient using var client new HttpClient client BaseAddress serviceBaseAddress Task
  • WCF - 网络成本

    我在 IIS 上部署了一个 wcf 服务 使用 basicHttpBinding 和 aspNetCompatibilityEnabled true 我还有一个测试客户端 它同时调用多个服务功能 为了检查客户端和服务器上服务调用的性能 我计
  • Angular 如何使用 rxjs 管道过滤可观察的数据

    我在服务文件中调用了一个名为 getWorkOrders 的方法 该方法又调用服务器来获取记录 这是我的服务 我正在使用新的 HttpClient export class BackendServices private BASE URL
  • 如何自定义 json 格式的 TestNG 报告结果

    我正在使用 TestNG 和 selenium webdriver java 我想制作一个json格式的输出报告 testng可以制作一个json格式的报告吗 请给我一个关于这个问题的例子 您可以编写自己的报告程序 以您需要的任何格式生成测
  • Python 编程。访问 Windows 右键菜单选项

    我希望能够自动化工作中的一些任务 其中之一是将 Power Point 文件合并并转换为 PDF 我是个新手 我刚刚读完 Magus Heitland 的 Beginning Python 所以我不太确定我具体要问什么 在 Windows
  • 编码的 UI 测试生成器无法为记录的操作生成代码

    我尝试在 Visual Studio 2015 Enterprise 中记录 Windows 10 上运行的 IE 中最简单的编码 UI 操作 问题是最近我开始得到Value cannot be null Parameter name ke
  • 在 ruby​​ 进程之间处理大数据对象

    如果使用 Marshal dump 写入文件 我的 Ruby 哈希值将达到大约 10 MB gzip 压缩后大约为 500 KB 在 ruby 中迭代和更改这个哈希值非常快 不到一毫秒 即使复制它也非常快 问题是我需要在 Ruby on R
  • C# 序列化对象并获取字节流

    我有一个对象 一个实例Serializable班级 我想知道如何以字节流的形式获取这个对象 我知道我可以使用BinaryFormatter http msdn microsoft com en us library c5sbs8z9 asp
  • 提高 pandas groupby 的性能

    我有一个用 Python 编写的机器学习应用程序 其中包括数据处理步骤 当我编写它时 我最初在 Pandas DataFrames 上进行数据处理 但是当这导致性能糟糕时 我最终使用普通 Python 重写了它 用 for 循环代替矢量化操
  • 获取错误的毫秒延迟值

    我试图获得 1 毫秒的延迟 但延迟增加了 15 倍 我也尝试过使用 WindowsSleep 1 函数也给了我相同的结果 为什么我没有得到精确的毫秒延迟 它的工作延迟为 1 秒 include
  • 表行的 jQuery 条件选择器

    我有一个表 其中包含数据 td item td td order code td td price td 我正在使用 jQuery 处理该表 它需要查找订单代码 each productList tbody tr function var
  • #pragma 末尾的隐式屏障

    朋友们 我正在尝试学习 openMP 范例 我使用以下代码来理解 omp for pragma int main void int tid int i omp set num threads 5 pragma omp parallel pr
  • SceneKit 在与 Swift 接触后获取纹理坐标

    我想在 3D SceneKit 场景中操作 2D 纹理 因此我使用此代码来获取本地坐标 IBAction func tap sender UITapGestureRecognizer var arr NSArray my3dView hit
  • Javascript - 获取两个日期之间的日期数组

    var range getDates new Date new Date addDays 7 我希望 范围 是一组日期对象 一个代表两个日期之间的每一天 诀窍在于它还应该处理月份和年份的边界 Date prototype addDays f
  • .Net core DI 范围验证,范围与瞬态?

    正在阅读docs https learn microsoft com en us aspnet core fundamentals dependency injection view aspnetcore 2 2 scope validat
  • Mongoose 中的“__v”字段是什么

    我在用着Mongoose版本 3 与MongoDB2 2 版 我注意到一个 v字段已开始出现在我的MongoDB文件 这与版本控制有关吗 它是如何使用的 From here http mongoosejs com docs guide ht
  • 如何将字符串解析为 Haskell 中的函数?

    我想要一个看起来像这样的函数 readFunc String gt Float gt Float 它的操作是这样的 gt readFunc sin pi 2 gt 1 0 gt readFunc 2 3 0 gt 5 0 gt readFu
  • IE 地址栏和源代码中出现奇怪的字符串

    这可能是也可能不是编程问题 但我网站的一两个用户的地址栏中插入了一些奇怪的字符串 地址应该是 http URL 情侣 http URL Couple文件夹 page aspx 但有时同样的事情会变成 http 网址 http URL X 1
  • Python 模块类型输入

    我正在使用动态加载Python模块importlib import module如下 def load module mod name str gt return importlib import module mod name 有人可以告
  • 比较 MAC OSX 中 Bash 中的两个日期

    我是 Bash 新手 提前道歉 Set up 我有一个特定的结束日期end这取决于特定的开始日期s和周期长度p这样 end s p Problem 当且仅当今天的日期早于或等于结束日期时 我想执行命令 即 执行命令iffdate end C