繁体   English   中英

我正在尝试将批处理嵌入到 php 中,但它没有执行

[英]I'm trying to embedded batch into php, but it is not executing

因此,我正在尝试在网站(在本例中为 php)中设置一个批处理可执行文件,因此它会将某些文件直接下载到所需的目录,而无需用户与之交互。 基本上计划是,如果有一个带有游戏模组/游戏内构建/世界的网站,您希望将它们直接下载到 AppData 中,而不必费心从下载中手动移动它。 我正在使用 Xampp localhost 来测试运行它(我确实以管理员身份运行它)。

我在网上搜索以找到如何在 php 中嵌入批处理,并得到了这个:

<?php
    exec("cd %AppData% && curl <LINK> -o <NAME>.<FILE_SUFFIX>");
?>

我尝试使用 'system' 而不是 'exec',也在命令前面添加了 'cmd /c',但也不起作用

之后我尝试了不同的方法,只是为了测试

<?php
    exec("start batch.bat");
?>

用这个代码

@echo
cd %AppData% 
curl <LINK> -o <NAME>.<FILE_SUFFIX>
pause

这导致

'curl' is not recognized as an internal or external command, operable program or batch file.

我也尝试过绝对路径而不是相对路径,但也没有积极的结果。

现在我不知道还有什么可尝试的以及可能导致这种情况的原因。 如果还有其他可行的选择来实现我上面所说的,也请告诉我。

所以这是我现在使用的工作代码

<?php
    exec("bitsadmin /transfer myDownloadJob /download /priority high <LINK> <TARGET_LOCATION_FILE>");
?>

我仍然不知道为什么curl不起作用,但由于bitsadmin是本机 Windows 命令,无论如何它更好。 感谢所有帮助过的人!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM