在指定时间自动关机?

在指定时间自动关机?

我知道我可以shutdown -h hh:mm在终端窗口中使用(sudo?)关闭系统,但是登录的用户是信息亭用户,该用户被锁定,以至于终端(或除 Firefox 之外的任何窗口)无法打开。

我的问题是:
有没有办法在不打开终端窗口的情况下做到这一点?我读过关于 cron 的文章,但不太明白。
如何根据当天日期更改关机时间?

答案1

Cron 可以很好地完成这一任务。

首先需要找到关机命令的完整路径:

a@ubuntu:~$ which shutdown
/usr/sbin/shutdown

知道命令的路径后shutdown,您可以将以下行(经过调整)添加到末尾/etc/crontab

30 23 * * * root /usr/sbin/shutdown -h now

23:30(晚上 11:30),信息亭将关闭。无论以哪个用户登录,关机命令都以 root 身份运行。

(如果您不想使用全局 crontab,请以 root 身份登录并使用crontab -e。使用上面相同的语法,但不使用root)。


Cron 格式:

MM HH DD OO WW command

MM:分钟,0-59
HH:24 小时制小时
DD:月份中的日期
OO:月份
WW:星期几(星期日为 0,星期一为 1)
command:不言自明

答案2

cronjob 似乎是最好的方法,因为您可以为不同的日期指定不同的时间。在基于 Gnome 的系统上,您只需安装GNOME 日程表使用

sudo apt-get install gnome-schedule

然后使用 GUI 配置 cronjob。

否则你必须使用sudo crontab -e然后添加以下几行

30 11 * * 1-5 /sbin/shutdown -h now
30 10 * * 0,6 /sbin/shutdown -h now

这将在周一至周五的 11:30 和周六、周日的 10:30 关闭 PC。结构非常简单:

minute (0-59), hour (0-23, 0 = midnight), day (1-31), month (1-12), weekday (0-6, 0 = Sunday), command 

有关此内容的更多信息,您还可以查看Cron如何操作

答案3

sudo poweroff我们可以通过简单地运行命令在指定的时间自动关机crontab

如果你想每天下午 6:30 关闭系统。在终端中输入:

sudo crontab -e

编辑

30 18 * * * poweroff

相关内容