通过PHP

时间:2016-09-30 04:28:11

标签: php

我的Windows Server中有一个Fetch.exe,在命令提示符下运行Fetch.exe会在控制台中返回一些文本输出。

我想将Fetch.exe包裹在exec PhP中,并生成result.txt

exec("Fetch/Fetch.exe > C:/inetpub/testaddbbacom/test/result.txt");

测试显示确实已生成result.txt,但它是空的。

然后,我在同一个文件夹中创建了一个简单的try.bat

enter image description here

同样,会生成一个空的result.txt

相比之下,exec("echo 123 > C:/inetpub/testaddbbacom/test/result.txt")工作正常。

有谁知道什么是错的?

更新1:以下是文件夹Fetch的权限,用户拥有所有权限:

enter image description here

1 个答案:

答案 0 :(得分:0)

  

如果您的路径字符串使用双引号,则必须使用单引号来转义反斜杠。你可以重写exe​​c调用:exec('C:\ inetpu \ testaddbbacom \ Fetch \ Fetch.exe> C:/inetpub/testaddbbacom/test/result.txt')或exec('C:/ inetpu / testaddbbacom / Fetch /Fetch.exe> C:/inetpub/testaddbbacom/test/result.txt') - @jlgsoftware