Bonjour,
Je m'arrache depuis un certain temps sur un script shell qui n'exécute pas correctement une commande parce que je suppose ( je n'arrive pas à voir le problème ) que le contenu de la variable est trop complexe et que des choses sont perdues.
Si je fais ça, ça marche ( ignorez $1 $2, $4 , le problème n'est pas là )
Code :
- TOTO="-re -threads 8 -framerate 60 -vaapi_device /dev/dri/renderD128 -hwaccel vaapi -f x11grab -draw_mouse 0 -video_size 1280x720 -i :0.0 -vsync 0 -vf 'fps=24,hwupload,format=nv12|vaapi' -c:v h264_vaapi -g 72 -qp 29 -an -f mpegts udp://227.50.1.14:30120"
- echo "TOTO : " $TOTO
- start-stop-daemon --nicelevel $4 --start --quiet --background --make-pidfile --pidfile $2 --exec $1 -- -re -threads 8 -framerate 60 -vaapi_device /dev/dri/renderD128 -hwaccel vaapi -f x11grab -draw_mouse 0 -video_size 1280x720 -i :0.0 -vsync 0 -vf 'fps=24,hwupload,format=nv12|vaapi' -c:v h264_vaapi -g 72 -qp 29 -an -f mpegts udp://227.50.1.14:30120
|
par contre si je fais ça, ça marche pas :
Code :
- TOTO="-re -threads 8 -framerate 60 -vaapi_device /dev/dri/renderD128 -hwaccel vaapi -f x11grab -draw_mouse 0 -video_size 1280x720 -i :0.0 -vsync 0 -vf 'fps=24,hwupload,format=nv12|vaapi' -c:v h264_vaapi -g 72 -qp 29 -an -f mpegts udp://227.50.1.14:30120"
- echo "TOTO : " $TOTO
- start-stop-daemon --nicelevel $4 --start --quiet --background --make-pidfile --pidfile $2 --exec $1 -- $TOTO
|
Alors que ca marche pour d autres programmes si les paramètres sont moins complexes, je n'arrive pas à voir si c'est les " ' " , ou les " : " de ma ligne de commande qui gênent.
A noter que si je fais ca, ca ne marche pas non plus ( notez les guillemets supplémentaires autour des paramètres )
Code :
- TOTO="-re -threads 8 -framerate 60 -vaapi_device /dev/dri/renderD128 -hwaccel vaapi -f x11grab -draw_mouse 0 -video_size 1280x720 -i :0.0 -vsync 0 -vf 'fps=24,hwupload,format=nv12|vaapi' -c:v h264_vaapi -g 72 -qp 29 -an -f mpegts udp://227.50.1.14:30120"
- echo "TOTO : " $TOTO
- start-stop-daemon --nicelevel $4 --start --quiet --background --make-pidfile --pidfile $2 --exec $1 -- "-re -threads 8 -framerate 60 -vaapi_device /dev/dri/renderD128 -hwaccel vaapi -f x11grab -draw_mouse 0 -video_size 1280x720 -i :0.0 -vsync 0 -vf 'fps=24,hwupload,format=nv12|vaapi' -c:v h264_vaapi -g 72 -qp 29 -an -f mpegts udp://227.50.1.14:30120"
|
Une idée comment contourner le problème ? je ne suis pas très bon en bash, je n'arrive pas çà voir la subtilité.
Merci d'avance