您好,我使用 NCL(Ncar 命令语言)绘制地图。但是,当我在 Crontab 下使用它时,它不起作用。您遇到过这个问题吗?
当我在终端中写入: ncl myscript.ncl 时,它起作用了
我的 crontab 行不起作用,它是:
9 17 * * * ncl /home/gep-server-hs/WRF-Rayonnement/Build_WRF/WRFOUT/20181018_TO_20181101/myscript.ncl
甚至:
9 17 * * * /home/gep-server-hs/ncl-6.5.0/bin/ncl /home/gep-server-hs/WRF-Rayonnement/Build_WRF/WRFOUT/20181018_TO_20181101/myscript.ncl
答案1
运行时环境cron
不同于交互环境,交互环境也不同于 at/batch 环境。
在每个环境中运行此程序,然后比较文件:
(echo "=== set ===";set;echo "===env ==="; env | sort;echo "=== alias ===";alias) >a_different_log
我这样做了,并得到了:
walt@bat:~(0)$ ll *.environment
-rw-rw-r-- 1 walt walt 10672 Oct 22 13:59 at.environment
-rw-rw-r-- 1 walt walt 10672 Oct 22 13:57 batch.environment
-rw-rw-r-- 1 walt walt 1031 Oct 22 14:00 cron.environment
-rw-rw-r-- 1 walt walt 126378 Oct 22 13:55 interactive.environment
walt@bat:~(0)$ wc -l *.environment
238 at.environment
238 batch.environment
48 cron.environment
3642 interactive.environment
您的环境中某些 NCAR 工作所需的设置未在环境中设置cron
。您必须手动设置它,或将您的命令包装在bash
设置环境的脚本中。