簡體   English   中英

PHP使用exec()執行linux命令

[英]PHP execute linux command using exec()

所以,我在我的ubuntu服務器上,並希望執行以下命令:

su -c /path/to/command -s /bin/bash -l otheruser

當我在linux命令行中輸入此命令時,它會完全詢問otheruser的密碼並執行命令。

但是,當我這樣做的時候

exec("su -c /path/to/command -s /bin/bash -l otheruser");

它沒有做任何事情。 我當然沒有為它指定密碼,但它並沒有真正返回任何可以幫助我解決這個問題的東西。 我已將該命令的權限設置為777以進行測試。

有什么建議么?

嘗試這個:

<?php

$ret = exec("su -c /path/to/command -s /bin/bash -l otheruser", $out, $err);

var_dump($ret);
var_dump($out);
var_dump($err);

?>

更多信息: http//us3.php.net/manual/en/function.exec.php

另外,如果您希望exec命令要求您為其他用戶提供密碼(就像在linux命令行中那樣) - 它將無法正常工作,exec命令不是交互式的。 您需要在內聯命令上傳遞密碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM