2018年1月19日金曜日

[PHP] シェルコマンド(Linuxコマンド)を実行する


【試した環境】
Google Cloud Platform(GCP)[VMインスタンス]上で実行
OS : Linux(Debian 9.2)
PHP(7.0.27)

PHPでシェルコマンド(Linuxコマンド)を実行したいときがたまにある。
[shell_exec] を利用することで実行ができる。

単純な実行

$output = shell_exec("ls");
結果例)index.php main.css
こうすることで [ls] コマンドの結果が [$output] にセットされる。

カレントディレクトリ

$output = shell_exec("pwd");
結果例)/var/www/html/test
phpを実行しているディレクトリがカレントディレクトリとなる。

その他の実行

シェルファイルの実行
もちろんシェルファイルも実行できる
$output = shell_exec("sh ../xxx.sh");
あたまに [sh] コマンドを記載しないと実行できないので注意

パイプの実行
もちろんパイプを使って複数実行も可能
$output = shell_exec("ps axu | grep www");

【参考】

phpでシェルファイルを実行する
shell_exec - PHPマニュアル

0 件のコメント:

コメントを投稿