gpt4 book ai didi

php - 在 php 中获取可更新的 linux 包列表

转载 作者:太空宇宙 更新时间:2023-11-04 09:39:09 25 4
gpt4 key购买 nike

我正在尝试通过 PHP 获取有关 Linux 上“可更新”软件包的信息(如“apt-get upgrade”中给出的那样)。

基本上,我感兴趣的信息是“apt-get upgrade”的输出 - 特别是以下行:“29 个已升级,0 个新安装,0 个要删除,0 个未升级。”即使您不继续更新,它也会出现。

所以我试着跑

print_r(exec('apt-get upgrade'));

但这在 PHP 中没有输出。有什么办法可以强制 exec “等待”输出?还是“apt-get”通常为 exec() 锁定?

谢谢你的帮助

最佳答案

  1. safe_mode 是否被禁用?
  2. 使用 shell_exec() 而不是 exec()
  3. 检查运行脚本的用户的权限(可能需要以 root/sudo 身份运行 apt-get upgrade)
  4. 试试这个:

$pkgs = shell_exec('apt-get upgrade'); echo "<pre>$pkgs</pre>";

解释:

exec() shell_exec() 时仅返回输出的最后一行输出整个流。

关于php - 在 php 中获取可更新的 linux 包列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23273099/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com