Ubuntu / Debian / Linux Mint
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com sudo apt install at
Fedora / AlmaLinux / Rocky Linux
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com sudo dnf install at
Arch Linux / Manjaro
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com sudo pacman -S at
然后,请验证该atd服务是否已启用并正在运行,因为该at命令依赖于它。
linuxmi@linuxmi /home/linuxmi/www.linuxmi.com sudo systemctl status atd
检查 atd 服务是否正在运行。
如果不是,您可以通过运行如下所示的两个命令来激活并运行它。
sudo systemctl enable atd sudo systemctl start atd
OK。我们现在可以继续使用at命令设置警报。语法很简单。键入at,然后是您希望执行特定 *** 作的时间。这里有些例子:
安排作业在 10 分钟后执行:
at now +10 minutes
安排在特定时间执行的作业:
at 15:00 at 3:00 pm
安排作业在 1 月 19 日早上 8:30 执行。
at 8:30 January 19
安排明天下午 5:00 执行作业。
at 5:00 pm tomorrow
现在你应该明白了。使用“ HH:MM ”格式指定时间。在时间后使用“ am ”或“ pm ”表示 12 小时制时间格式。最重要的是,可以使用月份名称后跟日期来指定日期。此外,at接受“ now+ interval ”增量,其中 interval 是一个数字,后面可以跟以下字符串之一:“ minutes ”、“ hours ”、“ days ”或“ weeks ”。
现在让我们继续在 Linux 上设置闹钟。为此,我们将在无界面模式(无 GUI)下使用 VLC 媒体播放器,并指示它在特定时间播放给定的媒体文件。因此,如果您的 Linux 系统上没有 VLC,请安装它。
我们将闹钟定在早上 7:30。然后,当您输入所需的命令时at 7:30,您将被带到at命令行界面,您可以在其中输入要在指定时间运行的命令。在这种情况下,那将是:
vlc --intf dummy alarm.mp3
当然,如果媒体文件位于主目录之外的其他位置,请指定完整路径。
准备就绪后,按“ Enter ”,然后按键盘快捷键“ Ctrl + D ”保存您的作业并退出。
使用 at 命令安排作业。
要查看所有计划at的作业,请键入:
[linuxmi@fedora www.linuxmi.com]$ at -l
您将看到每个作业的唯一 ID、计划运行的日期和时间以及运行它的用户。要删除作业,请键入at -r后跟其唯一 ID 号。
at -r 3
您可以在 Linux 手册页at上查看命令选项的完整列表。
使用 sleep 命令在 Linux 上设置闹钟
在 Linux 上,该sleep命令将 shell 脚本或命令的执行暂停指定的时间。因此,这使它成为在 Linux 中设置警报的理想选择。
但是,在这里您没有at命令提供的灵活性。您所能做的就是指定应该在多长时间后触发一个动作。此外,您可以以秒 ( s)、分钟 ( m)、小时 ( h) 和天 ( d) 为单位设置延迟时间。
因此,要设置闹钟,您必须首先计算它应该在距当前时间多远的时间后发生。此外,sleep执行命令的终端窗口必须保持打开状态。关闭它将导致命令中止并且设置警报失败。
sleep要使用将在 8 小时后启动 VLC 播放器播放媒体文件的命令在 Linux 上设置闹钟,请键入:
[linuxmi@fedora www.linuxmi.com]$ sleep 8h &&vlc --intf dummy alarm.mp3
使用 sleep 命令在 Linux 上安排警报。
就是这样。请记住,您不应关闭终端窗口。同样,如果你想让闹钟在 20 分钟后播放,命令如下:
[linuxmi@fedora www.linuxmi.com]$ sleep 20m &&vlc --intf dummy alarm.mp3
您可以在Linux 手册页上查看 sleep 命令选项的完整列表。
通过 GNOME 时钟在 GNOME 中设置闹钟
您可以使用内置的 GNOME 时钟应用程序通过 GNOME 桌面环境设置闹钟。如果您还没有它,您可以通过从您正在使用的发行版的软件中心安装它来轻松获得它。
可以在/etc/crontab文件中添加30 06 * * * mourenmplayer /home/1;就是在每天的六点三十用mplayer 播放/home/1音频或视频文件,当然是以中间的mouren的权限来执行shell命令的1. RTC(Real Time Clock)所有PC都有RTC. 它和CPU和其他芯片独立。它在电脑关机之后还可以正常运行。RTC可以在IRQ8上产生周期性中断. 频率在2Hz--8192HZ.Linux只是把RTC用来获取时间和日期. 当然它允许进程通过对/dev/rtc设备来对它进行编程。Kernel通过0x70和0x71 I/O端口来访问RTC。 2. TSC(Time Stamp Counter)80x86上的微处理器都有CLK输入针脚. 从奔腾系列开始. 微处理器支持一个计数器. 每当一个时钟信号来的时候. 计数器加1. 可以通过汇编指令rdtsc来得到计数器的值。通过calibrate_tsc可以获得CPU的频率. 它是通过计算大约5毫秒里tsc寄存器里面的增加值来确认的。或者可以通过cat /proc/cpuinfo来获取cpu频率。tsc可以提供比PIT更精确的时间度量。 3. PIT(Programmable internval timer)除了RTC和TSC. IBM兼容机提供了PIT。PIT类似微波炉的闹钟机制. 当时间到的时候. 提供铃声. PIT不是产生铃声. 而是产生一种特殊中断. 叫定时器中断或者时钟中断。它用来告诉内核一个间隔过去了。这个时间间隔也叫做一个滴答数。可以通过编译内核是选择内核频率来确定。如内核频率设为1000HZ,则时间间隔或滴答为1/1000=1微秒。滴答月短. 定时精度更高. 但是用户模式的时间更短. 也就是说用户模式下程序执行会越慢。滴答的长度以纳秒形式存在tick_nsec变量里面。PIT通过8254的0x40--0x43端口来访问。它产生中断号为IRQ 0.下面是关于pIT里面的一些宏定义:HZ:每秒中断数。CLOCK_TICK_RATE:值是1,193,182. 它是8254芯片内部振荡器频率。LATCH:代表CLOCK_TICK_RATE和HZ的比率. 被用来编程PIT。setup_pit_timer()如下:spin_lock_irqsave(&i8253_lock, flags)outb_p(0x34,0x43)udelay(10)outb_p(LATCH &0xff, 0x40)udelay(10)outb (LATCH >>8, 0x40)spin_unlock_irqrestore(&i8253_lock, flags) 4. CPU Local Timer最近的80x86架构的微处理器上的local apic提供了cpu local timer.他和pit区别在于它提供了one-shot和periodic中断。它可以使中断发送到特定cpu。one-shot中断常用在实时系统里面。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)