bash / shell 脚本中增加时间(分钟和秒)

2024-03-01

我需要在变量中增加分钟和秒(相对于时间)。

首先,我不确定声明“时间”变量是否写为

time="00:00:00" 

or

 time=$(date +00:00:00)?

从那里,我想将该变量增加 10 分钟和秒,结果是

01:00:00 增加至
01:10:10 至
01:20:20 等(一直到午夜 - 00:00:00)

实现这一目标的最佳方法是什么?

我明白做$ date -d "2010-07-07 200 days"添加 (200) 天,但我不知道如何将此示例应用于时间(分钟和秒)而不是日期?

非常感谢所有回复。


请注意,这仅适用于 Linux。date -d在 BSD unix(也可能是其他)上做了一些明显不同的事情(而且很糟糕)。

您可以使用纪元时间 - 即自 1970 年 1 月 1 日 00:00:00 以来的秒数,例如:

#!/bin/bash

time=0
echo `date -d "1970-01-01 00:00:00 UTC $time seconds" +"%H:%M:%S"`
time=$((time + 600))
echo `date -d "1970-01-01 00:00:00 UTC $time seconds" +"%H:%M:%S"`
time=$((time + 600))
echo `date -d "1970-01-01 00:00:00 UTC $time seconds" +"%H:%M:%S"`

给出这个输出:

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

bash / shell 脚本中增加时间(分钟和秒) 的相关文章

  • 使用 grep 查找包含所有搜索字符串的行

    我有一个文件 其中包含很多与此类似的行 id 2796 some model Profile message type MODEL SAVE fields account 14 address null modification times
  • Mongodb shell mongo:通常只允许每个套接字地址(协议/网络地址/端口)使用一次。对于套接字:0.0.0.0:27017

    前两天还好好的 现在mongod不起作用 甚至echo ps A grep mongo没有打印任何内容 但它警告错误 每个套接字地址只有一种用途 怎么杀掉它 我也尝试过不同的随机端口 他们怎么可能也失败呢 D mongodb win32 x
  • 如何使用 bash 锁定文件

    我有一个任务从远程服务器同步目录 rsync av email protected cdn cgi l email protection srv data srv data 为了使其定期运行并避免脚本 reEnter 问题 我使用 rsyn
  • 如何在 Linux 中编写文本模式 GUI? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 当我编写脚本 程序时 我经常想弹出一个简单的文本 gui 来提示输入 我该怎么做 例如 来自 Shel
  • 如何在 shell 脚本中并行运行多个实例以提高时间效率[重复]

    这个问题在这里已经有答案了 我正在使用 shell 脚本 它读取 16000 行的输入文件 运行该脚本需要8个多小时 我需要减少它 所以我将其划分为 8 个实例并读取数据 其中我使用 for 循环迭代 8 个文件 并在其中使用 while
  • grep 两个分隔符之间的子字符串

    我有很多bash使用的脚本perl内的表达式grep为了提取两个分隔符之间的子字符串 例子 echo BeginMiddleEnd grep oP lt Begin End 问题是 当我将这些脚本移植到运行的平台时busybox 融合的 g
  • C程序调用shell脚本

    我有一个小型 C 程序 调用 shell 脚本 myScript sh 我得到的 ret 值为 256 请帮助我了解系统调用出了什么问题 int main int ret ret system myScript sh ret gt gt r
  • chown:不允许操作

    我有问题 我需要通过 php 脚本为系统中的不同用户设置文件所有者权限 所以我通过以下命令执行此操作 其中 1002 是系统的用户 ID file put contents filename content system chown 100
  • 如何判断 Bash 中是否存在文件?

    这会检查文件是否存在 bin bash FILE 1 if f FILE then echo File FILE exists else echo File FILE does not exist fi 我如何只检查文件是否存在not ex
  • 使用 find 命令搜索直到第一个匹配项

    我只需要搜索可以在任何地方的特定目录有没有办法运行此命令直到第一个匹配 谢谢 我现在使用 find noleaf name experiment type d wc l 正如鲁道夫 米尔鲍尔 Rudolf M hlbauer 所提到的 qu
  • Linux:在文件保存时触发 Shell 命令

    我想在修改文件时自动触发 shell 命令 我认为这可以通过注册 inotify 挂钩并调用来在代码中完成system 但是是否有更高级别的 bash 命令可以完成此任务 尝试 inotify 工具 我在复制链接时遇到问题 抱歉 但 Git
  • 在 iOS 模拟器中安装应用程序的脚本

    我正在尝试自动化构建应用程序 运行单元测试以及最终运行 UI 测试的过程 我正在通过命令行 xcodebuild sdk iphonesimulator6 0 在某个目录中构建应用程序 如何通过命令行 在 Library Applicati
  • 如何在shell中输出返回码?

    我正在尝试通过调用自定义 shell 脚本sh bin sh c myscript sh gt log txt 2 gt 1 echo 该命令的输出是创建的后台进程的 PID 我想指导 bin sh保存返回码myscript sh到某个文件
  • 在 bash 脚本中提取 XML 值 [重复]

    这个问题在这里已经有答案了 我正在尝试从 xml 文档中提取一个值 该文档已作为变量读入我的脚本中 原始变量 data is
  • 使用 sh 运行 bash 脚本

    我有 bash 脚本 它需要 bash 另一个人尝试运行它 sh script name sh 它失败了 因为 sh 是他的发行版中 dash 的符号链接 ls la bin sh lrwxrwxrwx 1 root root 4 Aug
  • 如何查看正在运行的 tcsh 版本?

    如何查看我的 UNIX 终端中运行的 tcsh 的当前版本 看着那 这version多变的 echo version tcsh 6 14 00 Astron 2005 03 25 i386 intel linux options wide
  • 使用 MYSQL 将 h:mm pm/am 时间格式插入数据库

    我正在尝试将以 h mm am pm 格式写入的时间插入到存储为标准 DATETIME 格式 hh mm ss 的数据库中 但我不知道如何将发布的时间转换为标准格式所以数据库会接受它 这是我到目前为止一直在尝试的 title POST in
  • 使用 su 和 Expect 脚本登录用户时遇到问题

    我正在为一个班级制作一个网站 您可以使用用户名和密码登录 然后它会将您带到一个显示您在班级中的成绩的页面 该网站正在运行bash脚本 https github com jduga002 rapache 并将托管在用户已有用户名和密码登录的计
  • 分叉/多线程进程|重击

    我想让我的代码的一部分更加高效 我正在考虑让它分叉成多个进程 并让它们一次执行 50 100 次 而不是只执行一次 例如 伪 for line in file do foo foo2 foo3 done 我希望这个 for 循环运行多次 我
  • 在脚本内使用不带密码的 sudo

    由于某种原因 我需要作为用户在没有 sudo 的情况下运行脚本 script sh 该脚本需要 root 权限才能工作 我认为将 sudo 放入 script sh 中是唯一的解决方案 让我们举个例子 script sh bin sh su

随机推荐

  • 获取oracle中索引的完整ddl

    我使用的是 Oracle 11g 12c 我想获取数据库中索引的 ddl 为此 我使用了查询 SELECT DBMS METADATA GET DDL INDEX SYS IL0000091971C00001 CCEEXPERTS FROM
  • 我如何要求此 Django 视图使用 HTTPS?

    r login django contrib auth views login template name login html authentication form CustomAuthenticationForm 如何添加所需的 HT
  • 使 Moose 构造函数忽略 undef 参数

    哈希表是 Perl 对象的典型初始化器 现在您的输入是不可靠的 因为您不知道对于任何给定的键是否有定义的值 也不知道该键是否存在 现在 您想要将此类不可靠的输入提供给 Moose 对象 虽然缺少键完全没问题 但您确实希望摆脱未定义的值 这样
  • 平台调用语句中 DLL 的相对路径

    我正在使用 VS 2008 开发一个使用 dll 和 P Invoke 的应用程序 当我使用绝对路径时 我可以成功使用该dll 例如 这确实有效 DllImport C myDLL dll 内部静态外部布尔 isReady 这不起作用 Dl
  • 我的 openssl 和 ssl 默认 CA 证书路径是什么?

    背景 我正在尝试与外部供应商创建 SSL 上下文连接以进行握手 然后通过该连接使用 xml 进行通信 clientCert path cert path clientKey path key path PROTOCOL ssl PROTOC
  • 在组件中的“伪构造函数”与“函数 init()”中使用 CFML 代码时

    给定例如的伪构造函数在 CFML 中 component Pseudo Constructor start here comes some cfml scripting code Pseudo Constructor end functio
  • “IconDefinition”类型的参数不可分配给“IconDefinitionOrPack”类型的参数

    我在用着Angular 6 角度启动器 https github com gdi2290 angular starter和fontawesome 跟随here https github com FortAwesome angular fon
  • 并行运行多个 R 函数

    我有一个数据集 其中包含很少的数字列和超过 1 亿行的 data table 对象 我想根据其他列对某些列进行分组操作 例如 对 d 列中每个类别的 a 列的唯一元素进行计数 my data a count uniqueN col a co
  • 即使在 Monitor.Enter 之后,Monitor.TryEnter 也始终返回 true

    我想我错过了一些关于正确行为的事情Monitor Enter and Monitor TryEnter 这是我编写的一段代码 用于将问题与其余代码分开 object lockObj new object bool result Monito
  • 用于大型数据集的 sqlite 或 mysql

    我正在处理大型数据集 数十百万条记录 有时是数百百万条记录 并且想要使用与 R 良好链接的数据库程序 我正在尝试在 mysql 和 sqlite 之间做出决定 数据是静态的 但我需要做很多查询 In this 链接到 sqlite 帮助 h
  • Mongodb NoRM 和 POCO

    我正在 C 中试验 Mongodb 和 NoRM 根据我的阅读 唯一标识 Mongodb 中文档的 ObjectId 是一种 特殊 Guid 从某种意义上来说是唯一的 但其中有一些重要的部分 可以更轻松地进行排序和索引 时间戳 机器哈希 p
  • 如何处理“AES/GCM/NoPadding”的 IV 和身份验证标签?

    我在用着AES GCM NoPaddingJava 8 中的加密 我想知道我的代码是否存在安全缺陷 我的代码似乎work 因为它加密和解密文本 但一些细节尚不清楚 我的主要问题是 Cipher cipher Cipher getInstan
  • 谷歌地图 API 3 + WMS

    有人可以给我最好的主意 如何将 WMS 图层放在 Google 地图上 我有很多图层和很多样式 我在 StackOverflow 研究了很多问答 但我没有明白如何管理多种样式和图层 我想放入我的 JQuery 代码中 这里有一个很好的例子
  • CryptEncrypt 不加密整个文本

    我正在尝试使用 wincrypt 加密短信 然而我的代码是不可预测的 它不会加密 解密整个明文 而只会加密 解密其中的一部分 如果我更改密码的长度 例如更改为 password123 它会加密 解密不同数量的字符 这是我的代码 includ
  • 如何获得国家名称

    我使用下面的代码来获取文化类型列表 有没有办法只获取国家 地区名称 谢谢 static void Main string args StringBuilder sb new StringBuilder foreach CultureInfo
  • socket.gaierror: [Errno -2] Python3 未知名称或服务

    我正在尝试使用端口扫描程序 import socket import subprocess import sys from datetime import datetime subprocess call clear shell True
  • 如何在 ASP.NET Core 中使用 JWT 授权重定向到 401 登录页面

    我的 Startup cs 中有这个 JWT 授权配置 services AddAuthentication opts gt opts DefaultAuthenticateScheme JwtBearerDefaults Authenti
  • 拉伸链接引导程序实用程序在 Chrome 中不起作用

    看来拉伸链接 https getbootstrap com docs 4 4 utilities stretched link 在 Bootstrap 中不适用于 tr Firefox 可以 但 Chrome 不行 Chrome 似乎忽略了
  • Powershell - 使用共享证书添加 SSL 绑定

    我正在使用以下代码将证书链接到我添加的 SSL 绑定 thumb Get ChildItem cert LocalMachine My where object Subject like wildCardSubject Select Obj
  • bash / shell 脚本中增加时间(分钟和秒)

    我需要在变量中增加分钟和秒 相对于时间 首先 我不确定声明 时间 变量是否写为 time 00 00 00 or time date 00 00 00 从那里 我想将该变量增加 10 分钟和秒 结果是01 00 00 增加至01 10 10