我试图让以下 linux 命令使用 PHP 工作。我阅读了 PHP 中的 shell_exec
命令,它可用于执行 shell 命令。
我正在尝试将一些简单的文本输出到文本文件。我尝试了以下方法:
<?php
$cmd = 'echo "hi" > Desktop/test/output.txt';
shell_exec($cmd);
?>
请注意,我在 Ubuntu 16.04 上运行它。我还使 www-data 成为 Desktop/test 文件夹的所有者,以便它可以写入。以下是我为此使用的命令:
sudo chown -R www-data:www-data Desktop/test
当我执行上述命令时,直接在 shell 中我可以看到使用字符串输出创建的 output.txt 文件。
但是,当我通过 apache 网络服务器执行 php 脚本时,我看不到正在创建的 output.txt 文件。
很高兴你能指出我正确的方向。
谢谢
最佳答案
正如我在评论中所说:您应该使用绝对路径。
<?php
$cmd = 'echo "hi" > /home/username/Desktop/test/output.txt';
shell_exec($cmd);
?>
关于php - 运行 linux 命令以通过 PHP 输出到文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45433444/