試圖在PHP運行下面的命令來運行PowerShell命令......PHP PowerShell命令
了以下工作:
$output = shell_exec(escapeshellcmd('powershell get-service | group-object'));
我不能像這樣運行:
$output = shell_exec('powershell get-service | group-object');
它不會通過管道|性格
,但如果我嘗試運行:
$output = shell_exec(escapeshellcmd('powershell get-service | where-object {$_.status -eq "Running"}'));
我沒有得到任何輸出。
以下:
$cmd = escapeshellcmd('powershell get-service | where-object {$_.status -eq "Running"}');
回報:
powershell get-service ^| where-object ^{^$_.status -eq ^"Running^"^}
爲什麼發生這種情況,如何解決這個問題有什麼建議?
編輯:另外我可以運行它爲.ps1腳本,但我希望能夠傳遞$ var到它。
了shell_exec( 'PowerShell的-c 「獲得服務|其中對象{$ _狀態-eq \」 運行\「}');! 工作就像一個魅力喬希,感謝 – 2010-03-01 02:56:20
給了EXEC因爲你直接調用PowerShell,所以沒有必要首先通過命令行shell,也可以避免其他字符(如百分號)出現問題 – Josh 2010-03-01 02:59:15
不喜歡exec命令。 – 2010-03-01 03:05:52