usa tutorial sobre que para instalar index funciona elastic crear como comandos php shell ffmpeg shell-exec

php - tutorial - todo sobre elasticsearch



PHP-Cómo hacer que los errores de Shell se repitan en la pantalla (1)

Los datos de error se emiten desde el flujo STDERR del programa de STDERR . Puede obtener acceso a los datos de error a través de la cadena normal devuelta desde shell_exec() agregando 2>&1 al comando, que redireccionará STDERR a STDOUT , la secuencia que está viendo actualmente:

var_dump(shell_exec("ffmpeg -i /var/www/html/sitedomain/httpdocs/tmp/ebev1177.mp4 2>&1"));

También puede querer echar un vistazo a proc_open() que le permitirá acceder a STDIN , STDOUT y STDERR como tres flujos individuales, que pueden permitir un control más STDERR del programa objetivo y exactamente cómo maneja la entrada y la salida. para ello, incluida la redirección de cualquiera y todos ellos directamente a un archivo de registro, si así lo desea. Sin embargo, tenga en cuenta que este es un mecanismo mucho más complejo, con muchas trampas y peligros de tropiezos.

Más información sobre las corrientes estándar se puede encontrar here .

Estoy en el proceso de usar shell_exec() por primera vez. Estoy tratando de convertir algunos archivos de video en mi servidor usando el script de shell ffmpeg.

Cuando el código de abajo en el navegador, devuelve NULL:

var_dump(shell_exec("ffmpeg -i /var/www/html/sitedomain/httpdocs/tmp/ebev1177.mp4"));

Sin embargo, cuando ejecuto el código equivalente en mi terminal:

> ffmpeg -i /var/www/html/sitedomain/httpdocs/tmp/ebev1177.mp4

Recupero toda una carga de información útil que termina con un error "At least one output file must be specified"

¿Por qué esta información no se transfiere a mi script PHP para que pueda hacer eco?