linux - 每 60 秒复制一个文件 bash

标签 linux bash loops cp

我有一个 thecus nas 服务器,他们似乎对他们的模板做了一些棘手的事情来显示他们的文件,目前在启动时我正在运行一个 shell 命令来将一个文件复制到另一个文件上,以便它以我的自定义启动模板,但是在一定时间后(我不确定这次是什么时候)它再次用原始模板覆盖它,我的自定义模板消失了。

这是我当前的启动脚本:

#!/bin/bash
cp /customTemplates/login.tpl /www/img/templates/adm/login.tpl

有没有办法每 60 秒执行一次复制命令? login.tpl 文件只有 2kb,所以我认为这不会导致任何问题。

这样做有什么不对吗?还是我可以使用其他技巧?

最佳答案

要回答一般性问题,有两种方法,将其置于 while/sleep 循环或使用 crontab

1) while/sleep

#!/bin/bash
while true; do
  cp -f /customTemplates/login.tpl /www/img/templates/adm/login.tpl
  sleep 60
done

2) crontab(首选)

运行 crontab -e 并在其中放置以下行

* * * * * cp -f /customTemplates/login.tpl /www/img/templates/adm/login.tpl

这将在一周中的每一天的每个月的每一天的每一分钟的每一小时运行命令。 (因此每 60 秒计算一次)

但是,作为 Aaron Digulla said,最好到达它从中提取配置的位置并在那里进行编辑,而不是每 60 秒覆盖一次。

关于linux - 每 60 秒复制一个文件 bash,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21572267/

相关文章:

bash - 查找文件,就地重命名 unix bash

bash 脚本提取 LDAP 的域名

loops - 为什么这些 Fortran 95 循环方法的执行时间不同?

c - 如何在 C 中的 strcpy() 之前循环初始化 char 数组并一次又一次地清空它?

c - 强制 ld 在 ld 时间解析弱引用

linux - SNMP 管理树莓派

linux - 如何在 Linux Mint 上禁用 USB 设备?

linux - 如何从 bash 中的 df 中提取特定数字?

c++ - 循环接受第一组输入,然后重用该值

linux - 我只想从 unix 文件中搜索字符串,前提是它后面跟着另一个字符串