Answers:
您可以使用该at
命令。将at
在稍后的时间执行命令。该at
实用程序将读取从标准输入,并将它们一起组命令作为在作业,以在稍后的时间被执行。
通常,at
默认情况下,它是在Ubuntu中默认安装的,但是如果您的发行版不包含它,请通过以下方式安装:
sudo apt-get install at
有关更多信息,选项,示例以及其他信息,请参见Ubuntu联机帮助存储库
例:
at now +8 hours -f ~/myscript.sh
您还可以使用便捷的速记方式,例如tomorrow
或noon
,如
echo "tweet fore" | at teatime
警告:这将立即在管道的左侧运行命令,但仅在稍后显示其输出。该示例还演示了如何将操作通过管道传递到at
。 at -c
是检查计划的操作的方法,可以方便地列出它们的编号,例如:
at -c 3
at now +8 hours -f ~/myscript.sh
at 8:00
在绝对时间运行该命令,并且batch
“当计算机看上去空闲时” 运行该命令
teatime
在下午4点。由于某些原因,在manpages.ubuntu.com/manpages/raring/man1/at.1posix.html中未提及,但man at
在manpages.ubuntu.com/manpages/raring/en/man1/at.1.html中。
gpio write 8 1
但立即执行。
是的,您可以设置Cron作业。
例如,如果现在时间是14:39:00,今天是8月30日星期五,则可以使用以下crontab -e
命令在crontab文件中添加以下cron作业(将在8小时后执行):
39 22 30 8 5 /path/to/mycommand.sh
更多关于:
crontab
直到您将其删除。一年后,当您忘记了放置它的人以及原因时,您将不知所措,想知道如何使用该命令。
将基于Gnome的GUI用于cron
,at
等。
CronHowto的引入建议使用gnome-schedule
gui,这比在终端中键入所有垃圾要好得多(特别是对于那些不是“超级” * nix / bsd用户的“普通” Ubuntu用户。)
通过使用Unity Dash(或其他应用程序菜单)运行以查找“ 计划任务”或正在运行gnome-schedule
。
在基于Gnome的Ubuntu系统上,“应用程序->系统工具”中的Gnome计划任务工具(来自gnome-schedule软件包)提供了图形界面,提示您使用Cron。该项目的网站位于http://gnome-schedule.sourceforge.net/ ; 该软件可以从软件中心安装或通过键入
sudo apt-get install gnome-schedule
在一个终端。
gnome-schedule
对于您的主目录中的脚本,使用,将使用以下类型的窗口来设置新的“ at”命令:
在发现at
事情之前,我想出了一种快速而肮脏的方法。
假设您希望脚本在中午运行:
until [[ "$(date)" =~ "12:00:" ]]; do
sleep 10
done
./mycommand.sh
假设您希望它明天明天中午运行(对我来说今天是11月24日):
until [[ "$(date)" =~ "25 12:00:" ]]; do
sleep 30
done
./mycommand.sh
更新:稍微好一点的方法:仅使用date +FORMAT
以下方法测试您关心的数字:
until [[ $(date +%H:%M) == 21:06 ]]; do
...
at
,cron
或任何其他真实调度应用。任务调度很困难,而不是您应该重塑的方向。
at
。
at
是因为其作业将在重新启动后仍然存在。
nohup
+ 出问题了sleep
吗?为什么它是“不合适的”?