mit exec batch unter windows aufrufen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • mit exec batch unter windows aufrufen

    hallo forum,

    ich wuerde gerne mit php auf dem server einen kommandozeilenbefehl ausführen. z.b. ein batch-file aufrufen oder ein programm starten. dazu gibt es ja unter php verschiedene befehle. ich versuche es mit exec .

    "exec('Z:\\htdocs\\_frags\\php\\kommandozeile\\copy.bat');

    ich habe gelesen, dass exec in php quasi das gleiche macht, wie das 'ausführen' im windows startmenu. wenn ich

    Z:\htdocs\_frags\php\kommandozeile\copy.bat

    'ausführen' lasse gehts. php machts aber nicht. ich habe auch was von berechtigungen gelesen und die rechte fuer cmd.exe auf den iusr_XXX-user
    ausgeweitet. klappt aber immer noch nicht.

    hat jemand nen tip fuer mich?

    danke,
    gruesse,
    martin

  • #2
    Hi,

    du mußt in der bat die Pfade absolut angeben.

    Also:
    copy Z:\pfad\test.txt Z:\pfad\tester.txt
    Grüsse,
    Sebastian


    Profil Flex Freelancer
    Twitter twitter.com/flashhilfe
    Web Flash und Flex Community

    Kommentar


    • #3
      hab ich

      ...

      Kommentar


      • #4
        Was gibt
        PHP-Code:
        exec('Z:\\htdocs\\_frags\\php\\kommandozeile\\copy.bat'$back);
        echo 
        nl2br(implode("\n",$back)); 
        aus.
        Sonst eventuell system() versuchen.

        Note that when in 'Safe Mode' you must have the script or program you are trying to execute in the 'safe_mode_exec_dir'. You can find out what this directory is by using phpinfo().

        Offe

        Kommentar


        • #5
          nichts

          der browser laed und laed, aber es passiert nichts.

          phpinfo() gibt aus, dass safe_mode off sei und entsprechend ist das safe_mode_exec_dir undefined.

          danke, gruesse,
          martin

          Kommentar


          • #6
            nichts

            der browser laed und laed, aber es passiert nichts.

            phpinfo() gibt aus, dass safe_mode off sei und entsprechend ist das safe_mode_exec_dir undefined.

            vielleicht gibt es irgendeinen einfachen kommandozeilenbefehl (sprich parameter fuer exec), der zum testen besser ist, als meine batch.

            danke, gruesse,
            martin

            Kommentar


            • #7
              Schau mal ob sowas funktioniert...

              Habs mal so getestet....

              demo.bat (irgend ne datei kopieren)
              ____
              echo off
              c:

              copy C:\final14.xls C:\Downloads\final14.xls
              ____



              demo.php
              ____
              <?
              exec("C:\\demo.bat",$result);
              print_r($result);
              ?>
              ____

              Geht auch nix?
              _____________
              Ist das so? Scheinbar muss das so?! Oder ist es vielleicht viel leichter...
              [color=red]Auch ich beantworte keine mails bei php problemen! Für das gibts ja das Forum!![/color]

              Kommentar


              • #8
                nix

                mein batch:

                -----------------------------------------------------------------------
                REM copy documents

                xcopy "D:\htdocs\_frags\php\kommandozeile\tocpy.txt" D:\htdocs\_frags\php\kommandozeile\copy.txt /y
                -----------------------------------------------------------------------

                ...kopiert die datei 'tocpy.txt' nach 'copy.txt', wenn ich es auf meinem w2kserver mit 'ausführen' starte.

                entsprechend lautet das script auf dem w2k-server:

                -----------------------------------------------------------------------
                exec("D:\\htdocs\\_frags\\php\\kommandozeile\\copy.bat", $back);
                print_r($back);
                -----------------------------------------------------------------------

                ...ich hab's mit und ohne quoten versucht, die slashes mal so, mal anders herum gedreht.

                es will nicht. wie ist das mit den rechten? reicht es, wenn ich die rechte datei cmd.exe um einen usr iusr_server erweitere?

                danke,
                gruesse,
                martin

                Kommentar

                Lädt...
                X