检查字符串日期(mm / dd / yyyy)是否为周末-bash

我嵌套了循环遍历日期并创建日期。如何检查特定日期是否在周末?

字符串日期的格式为mm / dd / yyyy,但可以轻松更改。每个变量都有其自己的变量$ m $ d $ y

if [[ $(date +%u) -gt 5 ]] ; then
   #do something
fi

以上代码适用于当前日期,不确定如何将其转换为接受字符串日期。

wangleaishang3 回答:检查字符串日期(mm / dd / yyyy)是否为周末-bash

您可以在bash脚本中使用Ruby Date#cwday。例如:

#!/bin/bash
y=2019                                                                     
m=11
d=10
ruby -rtime -e "puts ([6,7].include? Date.new($y,$m,$d).cwday)"

输出true

,

我更喜欢直接使用该变量:

  if [[ $(date -d $your_variable +%u) -gt 5 ]]; then
     #do something
  fi

我认为只是使代码更简洁。

本文链接:https://www.f2er.com/3127914.html

大家都在问