在二进制文件exec上找不到PHP返回

时间:2015-08-01 08:29:48

标签: php linux shell

我正在尝试在脚本访问时实现对二进制文件的脚本调用。 所以,问题是php没有执行文件,而是报告错误:找不到。

这是脚本代码:     $ plugin_name =“sounds”;

$cmd = "./spcomp $plugin_name.sp -o $plugin_name.smx";
shell_exec($cmd);
if(is_resource("$path_to_compiler/$plugin_name.smx")) { echo "success"; }

spcomp 位于 sounds.sp 旁边(php脚本也是)(这些是sourcemod文件btw,如果你想要你需要linux分支看看里面)。我可以单独执行这些文件,但不能使用php。 这是脚本试图执行$ cmd时得到的结果:
[Sat Aug 01 11:24:19 2015] [error] [client *.*.*.*] sh: 1: ./spcomp: not found sh是工作文件夹。 垃圾箱没有损坏,它是775,我可以通过终端运行它。

那么,它有什么问题?

尝试:

  • 各种shell执行
  • 绝对路径
  • cwd change
  • 不同的功能(相同的结果)
  • shebang为$ cmd

这一切都没有效果。

谢谢。

1 个答案:

答案 0 :(得分:0)

internal class MyThreadSafeCass
{
    // *** Lock ***
    private object PropertyLock = new object();

    // *** Property ***
    private int m_Property = 0;

    // *** Thread-safe access to Property using locking ***
    internal int Property
    {
        get
        {
            lock (PropertyLock)
            {
                return m_Property;
            }
        }
        set
        {
            lock (PropertyLock)
            {
                m_Property = value;
            }
        }
    }
}