CentOS 上的 crontab 中的空输出
Empty output in crontab on CentOS
我写了一个简单的获取IPv4地址的脚本,如下:
#!/bin/bash
ip -4 addr | grep inet | awk -F '[ \t]+|/' '{print }' | grep -v ^127.0.0 | tr '\n' ' '
当我从 bash 运行 时,它运行良好。现在我创建了一个 crontab 条目并希望将 ip 地址输出到一个 tmp 文件:
* * * * * /root/ipv4.sh >> /tmp/tmp.txt
没有任何内容写入 /tmp/tmp.txt
,尽管 /tmp/tmp.txt
每分钟都会被触摸。它仅在 Cent OS 上发生,而在 Ubuntu 上它按预期工作。
通过在脚本中将 ip
更改为 /sbin/ip
解决了问题。
我写了一个简单的获取IPv4地址的脚本,如下:
#!/bin/bash
ip -4 addr | grep inet | awk -F '[ \t]+|/' '{print }' | grep -v ^127.0.0 | tr '\n' ' '
当我从 bash 运行 时,它运行良好。现在我创建了一个 crontab 条目并希望将 ip 地址输出到一个 tmp 文件:
* * * * * /root/ipv4.sh >> /tmp/tmp.txt
没有任何内容写入 /tmp/tmp.txt
,尽管 /tmp/tmp.txt
每分钟都会被触摸。它仅在 Cent OS 上发生,而在 Ubuntu 上它按预期工作。
通过在脚本中将 ip
更改为 /sbin/ip
解决了问题。