Hogyan tudok php-vel linux parancsokat, bash scripteket futtatni?
"nem tudtam"
Hibaüzenet?
"hiába az "export DISPLAY=:0"
Hát, grafikusan nem nagyon fog menni :)
így néz ki a php kód ( [link] )
<?php
$message=exec("/....../test.sh");
print($message);
?>
Ez pedig a bash script:
#!/bin/bash
export DISPLAY=:0
amixer sset 'Master' 5%
sleep 5
amixer sset 'Master' 10%
echo 'Vegrehajtva'
Hibaüzenetet nem sikerült kicsikarnom még belőle... :(
Ha külön a bash scriptet futtatom akár gépen, akár ssh-n, akkor működik, de így php-n keresztül nem
Eszközölj egy ilyesmi változtatást a PHP-szkriptben:
<?php
exec("/....../test.sh",$out);
print_r($out);
?>
Ugyanis az exec() leírásában szerepel, hogy nem az összes kimenetet adja visszatérési értékként, csak az utolsó sort:
"Return Values
The last line from the result of the command."
Ha az összes kimenet kell, használd a függvény második argumentumát:
"To get the output of the executed command, be sure to set and use the output parameter. "
Forrás: [link]
Egyébként ha konzolról (SSH-ból) futtatod a PHP-szkriptet ilyen módon:
php test.php
akkor lefut?
Ha a webszervert futtató felhasználó nevében,
su -c "php volume.php" felhasznalo
akkor is?
passthru-val? 2>&1 -el?
Konzolból jó az, amit futtatsz?
A display minek?
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!