macOS 上的 Bash - 获取给定年份每个星期六的日期列表

2024-04-17

In bash on macOS,我想写一个小脚本dates(或任何其他可以做的程序),它给我一个格式的日期列表yyyymmdd给定年份的每个星期六并将其保存到变量中。

例如,如果我想要 1850 年所有星期六的日期列表,它应该看起来像这样:

var = [ 18500105, 18500112, 18500119, …, 18501228 ]

使用以下代码:

list=()
for month in `seq -w 1 12`; do
    for day in `seq -w 1 31`; do
    list=( $(gdate -d "1850$month$day" '+%A %Y%m%d' | grep 'Saturday' | egrep -o '[[:digit:]]{4}[[:digit:]]{2}[[:digit:]]{2}' | tee /dev/tty) )
    done
done

然而,上面的命令并没有在数组中写入任何内容list虽然它给了我正确的输出tee.

我该如何解决这些问题?


修改丹尼斯·威廉姆森的回答 https://stackoverflow.com/a/5043700/5291015稍微满足您的要求并将结果添加到数组中。适用于 GNUdate而 FreeBSD 的版本则不然。

#!/usr/bin/env bash
y=1850

for d in {0..6}
do
    # Identify the first day of the year that is a Saturday and break out of
    # the loop
    if (( $(date -d "$y-1-1 + $d day" '+%u') == 6))
    then
        break
    fi
done

array=()
# Loop until the last day of the year, increment 7 days at a
# time and append the results to the array
for ((w = d; w <= $(date -d "$y-12-31" '+%j'); w += 7))
do
    array+=( $(date -d "$y-1-1 + $w day" '+%Y%m%d') )
done

现在您可以将结果打印为

printf '%s\n' "${array[@]}"

设置 GNUdate在 MacOS 上你需要做brew install coreutils并访问命令为gdate以将其与提供的本机版本区分开来。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

macOS 上的 Bash - 获取给定年份每个星期六的日期列表 的相关文章

  • 如何使用shell脚本从json字符串中grep特定字段值[重复]

    这个问题在这里已经有答案了 下面是文件中可用的 JSON 字符串 我需要从中提取值status在 shell 脚本中 预期输出 status success 响应 json eventDate null dateProccessed nul
  • OSX bash 最小化窗口

    在 Mac 中并使用 bash shell 我想执行一个包含单个命令 启动 Jupyter Lab 的文件并立即最小化终端窗口 有没有办法在不安装第三方软件的情况下做到这一点 是的 只需使用osascript https ss64 com
  • 将 Python 中的日期与日期时间进行比较

    所以我有一个日期列表 datetime date 2013 7 9 datetime date 2013 7 12 datetime date 2013 7 15 datetime date 2013 7 18 datetime date
  • 更改mysql数据库表中的日期格式

    大家早上好 只是一个简单的问题 在我现有的 MySql 数据库中 我几乎没有包含日期 的列 目前这些是年 月 日格式 但现在我需要将其全部更改为年 月 日格式 我试过了select date format curdate d m Y 但它不
  • 如何在 Linux shell 中将十六进制转换为 ASCII 字符?

    假设我有一个字符串5a 这是 ASCII 字母的十六进制表示Z 我需要找到一个 Linux shell 命令 它将接受一个十六进制字符串并输出该十六进制字符串代表的 ASCII 字符 所以如果我这样做 echo 5a command im
  • 基于浏览器位置/设置的 Angular 2 Datepipe 格式

    有没有办法使 datepipe 动态化 以便如果它是美国浏览器 则 d atepipe 返回美国格式 yyyy MM dd 而当它是欧洲浏览器时 它返回欧洲格式 dd MM yyyy Thanks 这可能很困难 尤其是在使用 aot 时 它
  • 如何从 bash 数组中删除元素而不展平数组

    我想创建一个采用 bash 数组的函数 如下所示 a element zero element one element two 并删除一个元素 如 元素一 并留下一个数组 如下所示 a element zero element two 这样
  • 使用 C 在 OS X 中获取其他进程的 argv

    我想获得其他进程的argv 例如ps 我使用的是在 Intel 或 PowerPC 上运行的 Mac OS X 10 4 11 首先 我阅读了 ps 和 man kvm 的代码 然后编写了一些 C 代码 include
  • 为什么我可以直接从 bash 执行 JAR?

    我是一个长期从事 Java 工作的人 并且知道运行带有主类的 JAR 的方法MANIFEST MFJar 中的文件很简单 java jar theJar jar 我用它来启动 Fabric3 服务器 包含在bin server jar在其标
  • 使用 Cocoa 获取无法安装的驱动器列表

    我想获取在 OS X 下使用 Cocoa Objective C 无法安装 弹出的驱动器列表 我希望 NSWorkspace getFileSystemInfoForPath 能帮助我 NSArray listOfMedia NSWorks
  • 如何在 OSX 上安装 numpy 和 scipy?

    我是 Mac 新手 请耐心等待 我现在使用的是雪豹 10 6 4 我想安装numpy和scipy 所以我从他们的官方网站下载了python2 6 numpy和scipy dmg文件 但是 我在导入 numpy 时遇到问题 Library F
  • XCode 4.2.1 在 Lion 10.7.2 上启动时崩溃

    这周我买了大约 10 年来的第一台 Mac 是的 这是一台二手 Mac Pro 2x2GHz 双核 Xeon 2GB RAM 它全新安装了 Mac OS X Lion 10 7 2 我只安装了 OmniOutlner Pro Textmat
  • 将二进制输出从文件输出重定向到 stdout

    我有一个专有的二进制文件 它顽固地接受两个文件作为参数 第一个作为输入 第二个作为输出 我想 构建第一个参数 不创建临时文件 使二进制写入标准输出而不是输出文件 第二个参数 我解决了第一个问题 lt 但不确定第二个参数 我编写了以下脚本 看
  • BASH:将数据从平面文件导入模板

    我有一个平面记录文件 每行有 33 行 我需要将此文件格式化为模板中的规格 模板为 DOS 格式 源文件为 NIX 格式 该模板具有必须遵守的特定缩进和间距 我想到了几个选择 BASH 与经典的 nix 工具 sed awk grep 等
  • dispatch_write() 和dispatch_read() 用法

    我只是在玩一些 GCD 函数来向文件写入和读取数据 其中两个函数是dispatch write and dispatch read 它允许向文件描述符写入和读取数据 而无需设置新的dispatch io t渠道 所以 我有以下代码 impo
  • 在 mac-os-x Yosemite 上调用“npm”时,Jenkins 构建步骤失败

    在开始之前 我想说我已经检查过这些答案 Jenkins 构建步骤在 npm install 上失败 https stackoverflow com questions 11564508 jenkins build step fails on
  • 当 grep "\\" XXFile 我得到“尾随反斜杠”

    现在我想查找是否有包含 字符的行 我试过grep XXFile但它暗示 尾随反斜杠 但当我尝试时grep XXFile没关系 谁能解释一下为什么第一个案例无法运行 谢谢 区别在于 shell 处理反斜杠的方式 当你写的时候 在双引号中 sh
  • 警告:找不到模板 /usr/local/git/share/git-core/templates

    我收到这个错误警告 找不到模板 usr local git share git core templates当我在本地存储库中克隆存储库时这个链接 https github com zikula modules Scribite issue
  • macOS Pluginkit 输出中的前缀是什么意思?

    执行中pluginkit match在终端中产生以下输出 跳过不重要的行 com apple ncplugin weather 1 0 com apple share SinaWeibo post 1 0 H com apple Inter
  • 乔达时间中两个日期之间的天数

    如何找到两次之间的天数差异乔达时间 http www joda org joda time DateTime http www joda org joda time apidocs org joda time DateTime html实例

随机推荐

  • StreamWriter.Write 不写入文件;没有抛出异常

    我的 C 代码 asp net MVC StreamWriter tw new StreamWriter C mycode myapp logs log txt write a line of text to the file tw Wri
  • 框架和对象之间有什么区别,什么时候应该修改其中一个而不是另一个?

    我开始阅读有关 python 的 语法的内容 并偶然发现了以下帖子 答案 关于 的交互代码 https stackoverflow com a 13329969 7143036 所以我注意到框架和物体之间似乎存在差异 在全局框架中 即使它们
  • JMS消息监听器Weblogic的并发处理

    我正在 JMS 上运行测试用例 发现处理是顺序的 当我向使用 JMS 发送消息的 servlet 发出 200 个请求时 接收器 messageListner 正在按顺序接收请求 如何接收并发请求 我们有什么参数要设置吗 我阅读了 JMS
  • 警告:尝试多次加载角度。角JS

    我试图在运行 Grunt Build 后查看我的应用程序 我使用 gruntserve dist 来查看所有生产就绪的构建 但在浏览器中我得到一个无限循环 警告 尝试多次加载角度 我读到发生这种情况是因为 TemplateURL 连接后可能
  • 警告:非法字符串偏移“名称”[关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我正在尝试制作一个产品插入页面 以便我可以将产品插入数据库 然后将它们显示在产品页面中 但是当我单击 添加产品 按钮时 出现以下错
  • pandas 数据框中的圆形浮点列

    我有以下熊猫数据框 Y X id WP NER 0 35 973496 2 734554 1 WP 01 1 35 592138 2 903913 2 WP 02 2 35 329853 3 391070 3 WP 03 3 35 3926
  • C#6 中的长字符串插值行不支持 Tab、CR 和 LF

    我尝试在 C 6 中使用制表符进行字符串插值 var name My Name var text t t name 它工作正常 制表符 t 已解决 当尝试使用时长字符串插值线 https stackoverflow com question
  • 具有数据属性的 JQuery UI 工具提示

    我正在尝试使用 HTML5 数据属性来存储和显示工具提示的内容 我使用 JQuery UI 作为工具提示 我已阅读文档 但尚未弄清楚如何对正确的选择器进行编程并显示自定义数据 对我所缺少的有什么想法吗 http jsfiddle net Q
  • 如何在 Symfony2 控制器中获取用户 IP 地址?

    我需要在提交表单后将评论用户的 IP 地址存储在数据库中 symfony2有没有获取IP的函数 或者有其他方法获取IP吗 您可以使用 Request 服务获取客户端 IP container gt get request gt getCli
  • 如何在开始日期的时间戳中添加秒数,以便获得估计的结束日期?

    我有一个带有 start time 和估计时间 以秒为单位 的任务对象 start time 以 MYSQL DATETIME 形式存储在数据库中 估计时间以秒形式存储 我想将秒数添加到 start time 以获得估计的完成日期 内维尔提
  • 安全地存储访问令牌

    我应该采取哪些安全措施来确保 如果我的数据库受到损害 长寿命访问令牌不会被盗 长寿命访问令牌与特定服务的用户名和密码一样好 但从与其他人的交谈看来 大多数人 包括我自己 都以纯文本形式存储访问令牌 这似乎与以纯文本形式存储密码一样糟糕 显然
  • 我的 QFileSystemModel 在 PyQt 中无法按预期工作

    EDIT2 model hasChildren parentIndex 回报True but model rowCount parentIndex 回报0 QFileSystemModel 只是 PyQt 中的 fubar 吗 EDIT 经
  • 使用 MQL5 将 OHLC 值从 Python API 集成到 MT5

    我已经从 iqoption 获得了 OHLC 值 并试图找到一种将其与 MT5 一起使用的方法 这是我获取这些值的方法 import time from iqoptionapi stable api import IQ Option I w
  • SSRS 可以根据导出类型切换标题可见性吗? 2008-R2

    我熟悉基于变量或参数值动态显示 隐藏其他报表对象 文本框 tablix 列等 但有没有办法用标题来做到这一点 我在标题对象上没有看到任何 可见性 选项卡来设置表达式 此外 有没有办法根据导出样式隐藏标题 例如 我想在导出到 PDF 时显示标
  • 在 Haskell 中的列表上编写递归函数

    我有以下问题 定义函数 and or Bool gt Bool 它给出了布尔值列表的合取和析取 例如 and False True False or False True True 在空列表上and gives True and or gi
  • 使用 CSS Mix-Blend-Modes 进行隔离:如何防止元素与父元素混合

    我已经尝试了很多不同的方法 但无法使 pink 和 green div 相互混合 但不能使父元素 wrapper 的背景颜色混合 wrapper background color blue height 100vh width 100 is
  • Python中的三角波形状数组

    生成 100 个数字组成的数组 形成下面三角波的形状 最大 最小幅度为 0 5 的最有效方法是什么 记住三角波形 生成三角波的最简单方法是使用 signal sawtooth 请注意 signal sawtooth phi width 接受
  • 如何将数据传回 Ionic 2 中的根页面?

    我有一个 Ionic 2 应用程序 该应用程序的前提是上课 一旦课程被打开 用户就会被标记为在远程 API 中学习该课程 数据流向为 用户打开 课程 选项卡 应用程序从 API 请求 类 数据 每个类别都拥有该用户的 状态 用户选择一个类别
  • UITableView 分隔符样式“单线蚀刻”无法正常工作

    我的代码中有一个分组的 UITableView 并且正在尝试使单线蚀刻样式正常工作 其底部有 1px 白色阴影 相反 当我启用它时 我会在顶部看到一种负灰色阴影 编程实现和 IB 实现都不会产生 1 px 阴影 以下是带有负灰色阴影的屏幕截
  • macOS 上的 Bash - 获取给定年份每个星期六的日期列表

    In bash on macOS 我想写一个小脚本dates 或任何其他可以做的程序 它给我一个格式的日期列表yyyymmdd给定年份的每个星期六并将其保存到变量中 例如 如果我想要 1850 年所有星期六的日期列表 它应该看起来像这样 v