Athlon: shell_exec übergibt keine 'Hochkächchen'

Guten Tag,

ich habe eine Problem mit shell_exec und zwar will ich folgenden befehl an eine Script übergeben:

$para im echo = /home/gameserver/css/srcds_run CSS_Server CSS '-game cstrike +maxplayers 8 +map de_dust2 +ip XX.XX.XX.XX +port 27015'

$output = shell_exec("sudo -H -u $coduser $para");

und des echo von $output sieht dann aber so aus:
/home/gameserver/css/srcds_run -game cstrike +maxplayers 8 +map de_dust2 +ip XX.XX.XX.XX +port 27015

Warum übermittelt er die '' nicht?? Diese Hächen braucht mein Script damit dies eine Input Var ist!

Gibt es eine möglichkeit? Was auch gehen würde sind "" anstatt '' aber dies habe ich nicht hingekommen....

ich würde mich über hilfe freuen.

MfG

Athlon

  1. Ich würde jetzt einfach mal spontan versuchen die ' zu escapen also:

    $para im echo = /home/gameserver/css/srcds_run CSS_Server CSS '-game cstrike +maxplayers 8 +map de_dust2 +ip XX.XX.XX.XX +port 27015'

    Ich kann dir jetzt aber auch leider nicht garantieren ob das funktioniert aber ein Verusch kostet ja nichts :)

    gruß Stefan

    1. wenn ich es so schreiben:
      /home/gameserver/css/srcds_run CSS_Server CSS '-game cstrike +maxplayers 8 +map de_dust2 +ip 84.200.243.206 +port 27015'

      bekomme ich übergibt er dies:
      screen -d -m -S CSS_Server /home/gameserver/css/srcds_run '-game

      Da schneidet er die hälfe weg....

      Und mit dem echo meine ich die Ausgabe auf dem Display z.b. <? echo "test"; ?>

      Mhr warum geht das nicht so??

      MfG

      Lars

      1. Mh

        wie kan man das lösen?? Hat jemand ne Idee??

        MfG

        Athlon

        1. Hallo Athlon,

          Dein Problem ist nicht nachvollziehbar.

          test.php:

          #!/opt/php/php  
          <?php  
          [link:http://de3.php.net/manual/de/function.print-r.php@title=print_r]($argv);  
          ?>
          

          Shell-Aufruf:
          $ php -r "echo [link:http://de3.php.net/manual/de/function.shell-exec.php@title=shell_exec]('/opt/php/testscripts/test.php CSS_Server CSS \'-game cstrike +maxplayers 8 +map de_dust2 +ip 84.200.243.206 +port 27015\'');"

          Ausgabe:
          Array
          (
              [0] => /opt/php/testscripts/test.php
              [1] => CSS_Server
              [2] => CSS
              [3] => -game cstrike +maxplayers 8 +map de_dust2 +ip 84.200.243.206 +port 27015
          )

          Was an Argumenten, anders als oben aufgezeigt, soll /home/gameserver/css/srcds_run übergeben werden?

          Gruß aus Berlin!
          eddi

          --
          Der Verweis auf die Grundlagen Deines Handelns, ist das Joch zur Freiheit.
          Aber so gilt: Allen Leuten Recht getan, ist keine Kunst, weil's jeder kann.
  2. Hellihello

    $para im echo

    Was ist Variable im echo?

    Dank und Gruß,

    frankx

    --
    tryin to multitain  - Globus = Planet != Welt