我想写一些图片下载器并在bash上分配它。我拥有什么,我需要什么:
我有:
wget
http://mywebcam.com/image.jpg -O /var/cam/Image.jpg
)Root权利
我的服务器和网络摄像头之间的快速互联网线路
我需要什么:
每秒从相机下载图像*(睡1?)*并将其重写为(我的命令做得好) 立即运行此脚本,不要担心重启(我想我需要使用bash命令创建文件并运行一次+将crontab工作“重启”到此文件,对吗?) < / p>
也许有人知道我该怎么做?
答案 0 :(得分:93)
如果你想以一秒的间隔运行一个命令(一个命令的结尾和下一个命令的开头之间的一秒,这与每秒运行不一样),只需执行:
while sleep 1; do cmd; done
如果您希望在重新启动时启动,则该方法将取决于您的系统。
答案 1 :(得分:64)
命令watch
将直接为您执行此操作。它还以一种很好的方式显示结果。
$ watch -n 1 date
用date
代替你的命令。 -n
选项指定以秒为单位的时间间隔。
答案 2 :(得分:0)
为此加两分钱...如果cron的一分钟间隔对您来说太长了,您可以利用systemd的功能来反复重启服务。
[Unit]
Description=Poll something each second
[Service]
Type=simple
ExecStart=/opt/poller/poll.sh
Restart=always
RestartSec=1
StartLimitInterval=0
[Install]
WantedBy=multi-user.target
我知道这是一种杂乱无章的“永不这样做”的方法。但这很完美,而且设置起来非常简单。