【问题标题】:Executing multiple line shell command in php在php中执行多行shell命令
【发布时间】:2014-04-18 07:18:33
【问题描述】:

我正在尝试使用 exec 命令从 php 执行 shell 命令

以下命令有效

echo exec('whoami');

但是我需要执行下面的shell命令

cat > /var/www/myfolder/abc.txt
hi
hello
welcome

问题是上面的shell命令必须在多行中执行。 “hi”、“hello”、“welcome”这些词是动态的,来自 php 变量。是否有解决此问题的方法。

【问题讨论】:

    标签: php shell exec


    【解决方案1】:

    在 php 中执行多行 shell 命令:

    passthru("bash <<'END'
            echo \"executed in new bash session\";
            pwd;
            whoami;
            exit;
            END
    ");
    

    这样你可以例如使用 php 连接到一个 ssh 服务器,然后在那里执行一些命令

    我不明白你所说的cat &gt; abc.txt 是什么意思。此命令将清空文件。

    【讨论】:

    • 当我提供 cat >abc.txt hI hello (ctrl+D) 以 hi hello 作为其内容创建文件时,cat 命令用于将内容写入终端中的文件
    猜你喜欢
    • 1970-01-01
    • 2014-04-21
    • 2015-08-18
    • 2011-03-28
    • 1970-01-01
    • 2018-10-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多