在脚本文件的第二行添加下面一句即可
复制代码
代码如下:
PATH=/usr/local/
下面是分析解决问题的步骤:
1.不执行的原因是环境变量引起的
2.目前没有找到配置cron的默认环境变量配置方法
vim /etc/crontab 可以看到这个文件里的环境变量是正确的
3. * * * * * /root/test.sh >ifconfig.txt 2>&1 & 每分钟执行一次test.sh
test.sh的内容如下,可以看到输出结果环境变量是 /usr/
复制代码
代码如下:
#!/bin/bash
#PATH=/usr/local/
ifconfig
echo $PATH
输出:
复制代码
代码如下:
/root/test.sh: line 3: ifconfig: command not found
/usr/
4.查看ifconfig的位置
复制代码
代码如下:
<a href=" whereis ifconfig
ifconfig: /sbin/ifconfig /usr/share/man/man8/ifconfig.8.gz
5.把test.sh脚本的第二行注释掉可以看到输出结果如下
复制代码
代码如下:
eth0 LinkHWaddr
inet
inet6 addr: fe80::20c:29ff:
UP BROADCAST RUNNING MULTICASTMetric:1
RXerrors:0 dropped:0 overruns:0 frame:0
TXerrors:0 dropped:0 overruns:0 carrier:0
collisions:0
RX519.1 MB TX447.2 MB
lo LinkLoopback
inet
inet6 addr: ::1/128
UP LOOPBACK RUNNINGMetric:1
RXerrors:0 dropped:0 overruns:0 frame:0
TXerrors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX23.2 MB TX23.2 MB</p><p> /usr/local/
6.test.sh脚本只是临时改变了PATH的值,它只在当前脚本生效