V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  wuyadaxian  ›  全部回复第 3 页 / 共 7 页
回复总数  128
1  2  3  4  5  6  7  
@brant2ai #88 估计和平台有关 。
#51 楼我找到一个文章,声称使用 macOS 可以这么运行。
但是没有发现 linux 平台下的案例。
@brant2ai 如果你那边服务器可以运行,请告诉我以下你服务器的系统和版本号。我去装一个测试下,看是不是只有 ubuntu 不行。
@brant2ai 同时,直接在窗口运行 [[ $(($(date +'%s / 60 % 1 '))) -eq 0 ]] && /etc/test.sh
是没问题的,因为左边部分永远为真,右边始终会执行。
@brant2ai 见楼上,我已经正确赋予了用户对 test.sh 的读写运行权限。
另外如果我改为* * * * * /etc/test.sh 是可以正常每分钟运行的。
* * * * * [[ $(($(date +'%s / 60 % 1 '))) -eq 0 ]] && /etc/test.sh
我将%7 改为%1 ,这样理论上每分钟就会运行一次 test.sh 。但是没有运行
@brant2ai 我也可以直接在 tty 中使用这行 command ,但是 cron 里面不会运行
@brant2ai 同样,在 cron 里面* * * * * [[ $(($(date +'%s / 60 % 7 '))) -eq 0 ]] && command 。 [无法运行] ------在 tty 内,[[ $(($(date +'%s / 60 % 7 '))) -eq 0 ]] && command 。 [正常运行]
@brant2ai 另外这个算没用 cron 了吧。
@brant2ai 你可以看看 45 楼和 51 楼,我不确定是不是我环境或者什么问题,在 ubuntu 下无法执行。
@brant2ai bash: syntax error near unexpected token `(' 是我的环境问题吗
@brant2ai 我试试
@brant2ai 要操作外部脚本啊,那就不在讨论范围了。都能用外部脚本了,方法就多了,楼上很多。
@brant2ai 复写的时候是哪段代码或什么外部程序或者谁(真人)来进行。
@mohumohu 我找到一篇文章,https://href.lu/15A 。此文章表示在 macOS 中成功使用了复杂的 command 。但是我在我现在的 linux ubuntu 下没有运行成功。不知道是不是哪里错了,比如需要用引号之类的。
@yankebupt 见 33 ,34 楼,只需要 49 条,还可以设置偏移量。
@lolizeppelin 每隔 7 分钟,执行一次 test 脚本,不管 test 脚本之后的状态。
@mohumohu 我尝试 * * * * * ((($(date +%s) / 60 % 7 == 0)) && /etc/test.sh) 并 [没有运行] 。我已经确认用户拥有 test.sh 的读写运行权限。另外我直接在 tty 里面输入((($(date +%s) / 60 % 7 == 0)) && /etc/test.sh)是 [可以运行] 的。
@mohumohu 后面 command 部分能接这种复杂的命令集吗?我尝试了下 cron 没运行(不知道是不是我的问题),但是直接输入后面的 command 是可以运行的。
@Puteulanus 我们只需要每天穷举 7 条 cron ,每周 7 天穷举 49 条 cron 就能实现。如果需要增加偏移量,只需要更改周的位置即可。
@Puteulanus 等等,我发现一周可以被 7 整除,而且一周这个单位不会被前面 4 个所影响。所以使用最后一个周作为标记来进行穷举即可。
1  2  3  4  5  6  7  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2769 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 13ms · UTC 09:53 · PVG 17:53 · LAX 01:53 · JFK 04:53
Developed with CodeLauncher
♥ Do have faith in what you're doing.