Hola a todos. Recientemente he estado intentando utilizar esta función y ni una sola de las soluciones encontradas por la web es capaz de ayudarme.
Mi problema radica en que esta funcion me funciona "a medias", me explico, si por ejemplo ejecuto
<?php
echo exec("whoami");
?>
me devuelve www-data, lo cual es correcto, pero si por ejemplo ejecuto
<?php
echo exec("ls -l");
?>
para listar los archivos del directorio donde tengo la pagina web, solo me devuelve la primera linea de los mismos
-rwxrwxrwx 1 ____ ____ 46 Apr 1 14:18 index.php~
los demas archivos no me los lista.
Por otro lado, esto que cito, son solo pruebas que he ido haciendo para ver si me funcionaba el comando. Realmente lo que quiero es poder abrir un programa igual que si lo hiciera desde la linea de comandos.
Probrando algo tan sencillo como:
<?php
echo exec("gedit");
?>
la salida que me arroja es:
Run 'gedit --help' to see a full list of available command line options.
Cosa que no entiendo, ya que si ejecuto esa misma linea, este en el directorio que este, me abre una ventana de dicho procesador de textos con un documento vacio, pero desde exec me arroja eso como si el comando fuese incorrecto.
Otro comando que he intentando que tampoco he podido ejecutar ha sido por ejemplo
<?php
echo exec("amixer sset Master 100%+");
?>
que sirve para subir el volumen, y en mi caso, a traves de exec no hace nada de nada.
En cuanto al sutituir exec por system me pasa exactamente lo mismo.
Alguien me puede ayudar? Muchas Gracias.