运行sh文件与ssh2_exec(PHP)

时间:2018-01-23 13:25:57

标签: php ssh centos sh

我尝试使用ssh2_exec运行sh文件,并在完成后获取流数据。

BTW我正在使用CentOS。

但是当我使用ssh2_exec('./file.sh');时,没什么好开心的。

文件运行完毕后可以获得执行输出吗?

1 个答案:

答案 0 :(得分:1)

根据PHP manual about ssh2_exec

的例子
$connection = ssh2_connect('shell.example.com', 22);
ssh2_auth_password($connection, 'username', 'password');
$stream = ssh2_exec($connection, '/usr/local/bin/php -i');

ssh2_exec()用于将命令传递给shell会话/连接。

为了阅读流内容,您可以尝试:

echo "Output: " . stream_get_contents($stream);

另一方面,如果您想在php / host服务器上运行命令,可以尝试使用shell_exec:

$output = shell_exec('ls -lart');
echo "<pre>$output</pre>";