2016-08-03 11 views
0

Windows 10は、今日、記念日の更新をリリースしました。今では、LinuxサブシステムからUbuntu風のbashコマンドを使うことができます。PHPからWindows10のBashコマンドを実行するには?

質問:PHPからWindows10のBashコマンドを実行するにはどうすればいいですか?

私はそれが動作しない

<?php 
    exec('bash',$out1,$result1); 
    exec('ls -l',$out2,$result2); 
    var_dump($out1); 
    var_dump($result1); 
    var_dump($out2); 
    var_dump($result2); 

を試してみました。すべての$ outは空の配列であり、両方の$結果は1です。 アイデアはありますか?


私はサブシステムから直接Webサーバーを実行できることがわかりました。

$ sudo apt-get install apache2 
$ sudo service apache2 start 

は、その後、私はしかし私が欲しいのbashスクリプトを実行することができます。この時点で、%LOCALAPPDATA%\ Lxss \ rootfsの

にあるサブシステムのディレクトリ内のすべてのWebコンテンツを置きます。

+0

'bash.exe -c "PHPのパス/に/ PHP-script.php" を実行しますが、あなたは[もしくはshell_exec()](http://php.netを試してみました/manual/en/function.shell-exec.php)? – tyb

+0

しました。 NULLを返します。 – Earthchie

答えて

0

できません。 Windows上のUbuntuは、Windowsカーネルの直下に別のサブシステムとして実装されています。つまり、通常のWindowsプロセスとは別に実行され、それらと対話できません。 (少なくともそれは私がそれを理解する方法です)。しかし、多分コマンドとしてC:\Windows\System32\bash.exeを使わなければならないかもしれません。

関連する問題