使用EXEC函数调用Peoplecode的OS命令时出错。 这个电话是这样的
CommitWork();
&ShellCommand = "/path/mytest.sh param1 param2";
&ReturnCode = Exec(&ShellCommand, %Exec_Synchronous + %FilePath_Absolute);
& ShellCommand使用路径,可执行文件和参数构建 如上所示通过。该命令在执行时工作正常 独立地
我不断收到错误 255 。语法有什么关系吗?有没有人有测试或工作的例子或任何建议?
答案 0 :(得分:1)
谢谢你们回复。该命令从shell脚本运行良好,但不是从Peoplesoft运行。事实证明,应用程序服务器上的当前文件夹不正确。所以我添加了一个CD命令作为shell脚本中的第一行,将当前文件夹更改为正确的文件夹。那很有效。 再次感谢。
答案 1 :(得分:0)
语法看起来正确。 我使用类似的代码来调用bat文件。
Exec("C:\windows\system32\cmd.exe /c C:\Test\mybat.bat param1 param2", %Exec_Synchronous+%FilePath_Absolute);
你尝试过绝对路径而不是相对路径吗?
答案 2 :(得分:0)
错误代码255似乎是超出范围的错误代码。
请参阅http://tldp.org/LDP/abs/html/exitcodes.html
我会检查你正在制作的假设。 运行shell脚本的用户名是否相同,用户名与应用服务器用户名是否相同? 环境设置是否与应用服务器用户名和用户名相同? 文件权限