所以我遇到了一些问题。我的工作场所在其机器上使用环境变量,最近我们将dev/prod服务器转换为基于unix的解决方案(RHEL 6),我们试图让一些旧程序使用cron运行。 envir变量是在盒子上运行的(例如:Server1 = dev-server.intranet.net或者这些行的东西),但是我们遇到了cron已经存在的问题。在cron中没有看到的环境变量
例子。
java -jar MyProgram.jar -- Works fine
MyProg.sh - 做工精细
JAVA_HOME=/usr/data/java/current
PATH=$JAVA_HOME/bin
export JAVA_HOME
export PATH
java -jar /usr/data/apps/MyProg/MyProg.jar
当调用从cron MyProg.sh,这是行不通的,因为它无法看到ENVIR变量都没有。
有人可以提供一些见解,如何使这与cron工作?
谢谢。
这不是一个真正的编程问题。这将是更适合superuser.com –
您的诊断看起来不正确。如果变量是在'MyProg.sh'中定义和导出的,那么它们对于你开始的''java'进程是可见的,或者脚本本身运行的方式是可怕的。它有一个有效的shebang线吗? – tripleee
它确实有shabang,我只是不小心在我的复制粘贴忽略它。我们的linux系统管理员一直在这一点上,他一直在撕裂他的头发。 –