AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 1271255
Accepted
Noga S
Noga S
Asked: 2020-08-31 00:13:39 +0800 CST2020-08-31 00:13:39 +0800 CST 2020-08-31 00:13:39 +0800 CST

Ubuntu 的命令行闹钟

  • 772

需要软件推荐!我正在寻找一个可以在我的 Ubuntu 20.04 机器上使用的闹钟,它带有一个命令行界面,使我能够从命令行设置闹钟。这是因为在我的工作流程中,我经常需要每天设置很多闹钟,通常只有一个小时左右。因为我经常这样做,所以一直弄乱 GUI 是一件很痛苦的事情。

我当然尝试过 GNOME 时钟,但它似乎没有命令行界面。

任何人都可以推荐任何像我正在寻找的东西吗?不太挑剔,只需要它来完成它的工作。

提前致谢 :)

software-recommendation command-line
  • 2 2 个回答
  • 2087 Views

2 个回答

  • Voted
  1. Best Answer
    vanadium
    2020-08-31T01:42:27+08:002020-08-31T01:42:27+08:00

    您可以使用该at命令(在 Ubuntu 20.04 上默认未安装)。它允许您在特定时间执行命令。例如,您可以弹出一个 Zenity 对话框作为警报。

    • 5
  2. BeastOfCaerbannog
    2020-08-31T05:31:41+08:002020-08-31T05:31:41+08:00

    您可以使用sleepUbuntu 上预装的命令在指定的时间后运行命令,如下所示:

    sleep NUMBER[SUFFIX] && command
    

    来自man sleep:

    DESCRIPTION
           Pause for NUMBER seconds.  SUFFIX may be 's' for seconds (the default), 'm'
           for minutes, 'h' for hours or 'd' for days.  Unlike most implementations
           that require NUMBER be an integer, here NUMBER may be an arbitrary floating
           point number.  Given two or more arguments, pause for the amount of time
           specified by the sum of their values.
    

    例如,您可以运行:

    sleep 3h 5m 25s && mpv file
    

    3 小时 5 分 25 秒后file使用媒体播放器打开。mpv


    sleep在一定时间后运行命令是完全可用和直接的,但是对于在指定时间(这里毫不奇怪)at运行命令更好。

    然而,类似的行为可以用sleep. 这是一个示例脚本:

    #!/bin/bash
    alarm_time=$1
    command=$2
    
    # convert alarm_time and current_time to seconds since 1970-01-01 00:00:00 UTC
    # and calculate their difference
    alarm_time=$(date -d "$alarm_time" +"%s")
    current_time=$(date +"%s")
    diff=$(( $alarm_time - $current_time ))
    
    # convert the time difference to hours
    sleep_time=$(echo "scale=5; $diff/3600" | bc)
    
    # run the command at the specified time
    sleep "$sleep_time"h && $command
    

    将其另存为alarm.sh(选择您的首选名称)并使其可执行后,您可以将其运行为:

    /path/to/alarm.sh time command
    

    如果您愿意,您可以将脚本添加到您的路径以便于访问,您还可以通过替换$2为您要运行的命令来硬编码要运行的命令。

    • 2

相关问题

  • 如何从命令行刻录双层 dvd iso

  • 如何从命令行判断机器是否需要重新启动?

  • 是否有 Paint.NET 替代方案?

  • 文件权限如何工作?文件权限用户和组

  • 如何在 Vim 中启用全彩支持?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve