Avatar billede dankerlinnet Nybegynder
03. marts 2013 - 18:27 Der er 5 kommentarer

Parsing af variabel til bash script !

Problem:
Skal parse et ID til et bash-script som skal bruge dette ID til at generere et filnavn.

PHP:
   
$ID = 'U'.$_POST['userID'].'B'.$_POST['nBlockVal'].'.avi';

shell_exec('bash /home/danker/webcam.sh $ID . > /dev/null 2>/dev/null & ');

BASH:
#!/bin/bash
avconv  -y -f video4linux2 -i /dev/video0  /var/www/clips/$ID &


____________________

MEN det virker ikke... Hvad gør jeg galt ?
Avatar billede olebole Juniormester
03. marts 2013 - 18:54 #1
<ole>

Denne linje ser ret sær ud:

shell_exec('bash /home/danker/webcam.sh $ID . > /dev/null 2>/dev/null & ');

Hvordan skal den ende med at se ud, når $ID er indsat?

/mvh
</bole>
Avatar billede erikjacobsen Ekspert
03. marts 2013 - 19:08 #2
Hvordan virker ikke?

Hvis det er meningen at værdien af $ID skal indsættes i strengen, skal den i dobbelt-quotes:

" ... $ID ... '
Avatar billede olebole Juniormester
03. marts 2013 - 19:22 #3
- og det 'må' gerne være i begge sider  =)

" ... $ID ... "

Men der er også punktummet efter $ID, jeg ikke forstår  =)
Avatar billede erikjacobsen Ekspert
03. marts 2013 - 19:34 #4
Det var nu bare for ikke at gøre det for nemt for spørgeren.

Men punktummet er såmænd fint nok i den verden, som bash lever i. Det ser så ikke ud til at blive brugt til noget.

Men der er flere problemer i det, for i linien med shell_exec er der første parameter til bash-scriptet, som spørgeren heller ikke bruger. Og HarryPotterMagi (c) sørger ikke for at det $ID overlever til selve bash-scriptet.

Derfor mit spørgsmål om, hvad problemet egentlig er.

Men lad os nu blot antage at spørgeren faktisk kan udføre en shell_exec (og det er vist ikke en normal indstilling), så er det lidt en omvej, som det ser ud for mig. Hvorfor ikke bare:

shell_exec("bash avconv  -y -f video4linux2 -i /dev/video0  /var/www/clips/$ID &"

Og man skal også huske om man så burde skrive fuld sti forsn bash og foran avconv - søgestier kan være forskellige.
Avatar billede olebole Juniormester
03. marts 2013 - 19:42 #5
"Det ser så ikke ud til at blive brugt til noget" >> Det glæder mig, jeg ikke er ene om at undres over, hvad punktummets begrundelse er  =)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester