我在Linux1上有一个procFile,它执行脚本并为java进程设置环境变量。
web: sh /var/app/current/scripts/sample.shsample.sh文件如下所示:
#!/bin/bash
logs=/var/tmp/logs; export logs
ps -ef|grep [t]estProcess
if[[ $? -eq 0 ]]
then
echo "process started"
exit 1
fi
exec java -Dservice.name=testProcess com.shakeout.testProcess在迁移到Linux2时,proc文件无法执行任何ps -ef或exec java系统进程。
我已经检查过,当我放置echo $PATH时,它能够显示PATH。
我遗漏了什么吗?
发布于 2021-03-04 00:23:01
您可以使用sh /var/app/current/scripts/sample.sh调用该脚本。在旧的Linux发行版上,/bin/sh可能指向/bin/bash,现在在新的Linux发行版上,/bin/sh可能不指向/bin/bash。请注意,[[在POSIX sh中无效。
您应该更改您的Procfile以使用web: bash /var/app/current/scripts/sample.sh。
https://stackoverflow.com/questions/66444544
复制相似问题