bash - 如果与 watch 命令一起使用,则在启动时运行脚本不起作用
问题描述
我有一个名为的文件/root/run.sh
,其中编写了以下代码
/usr/bin/watch -n1 "echo hello >> /root/out.txt"
如果我以下列方式在终端中手动启动它
bash /root/run.sh
一切正常。
现在我希望每次启动我的操作系统时都会调用这个文件,所以我修改了 cronjob 文件crontab -e
并添加了以下行:
@reboot bash /root/run.sh
不幸的是,它不起作用,这意味着重新启动后它不会在out.txt
文件中写入“hello”。
如果我run.sh
以以下方式修改脚本:
echo hello >> /root/out.txt
然后一切正常,这意味着在重新启动后它会在文件中写入一次“你好”这个词out.txt
。
如何使用 cronjob 执行 watch 命令?
解决方案
我解决了写入bash /root/run.sh
位于/etc/rc.local
. 现在一切正常,但我想知道为什么我不能把它放在 cronjob 列表中@reboot
推荐阅读
- asp.net - 单个网站,单个数据库架构多副本
- c# - 如何更正错误 CS0122:“WebHost”由于其保护级别而无法访问
- php - 可捕获的致命错误:传递给 ...CsrfTokenManager::isTokenValid() 的参数 1 必须是 ...\CsrfToken 的实例,给定字符串
- wcf - 无法添加服务引用 SSL
- python - 为什么我的 Python Speech to text 代码在运行时不打印文本?
- function - 在 C++ 中使用默认参数声明递归函数时出错
- java - FileReader 没有读取整个文本文件
- c++ - 如何以编程方式打开/关闭 Windows 代理
- xcode - Xcode Organizer Metrics 未显示三个最新版本
- javascript - 如何为 Vuejs 中单击的每个按钮/选项设置日期选择器