• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Command wird nicht ausgeführt

Beavis

Mitglied
Guten miteinander

ich habe ein Problem damit ein Befehl unter Linux auszuführen.
Ich will eine Anwendung starten, jedoch will er es nicht obwohl der gesammte Pfad stimmt

Ich habe hier mal die Commands die ich versucht hatte zu nutzen, es aber nicht funktioniert hat
PHP:
            //$master = shell_exec ("cd $Path/Samp_$SvrPort/ && ./samp03svr");
            //exec("cd $Path/Samp_$SvrPort ; nohup ./samp03svr &", $master);
            //echo "$Path/Samp_$SvrPort && ./samp03svr &";
            //exec("$Path/Samp_$SvrPort && ./samp03svr &",$unused);
            $unused = popen("$Path/Samp_$SvrPort && ./samp03svr &", 'r');
            echo $unused."<br/>" . gettype($unused);
            pclose($unused);
So langsam zweifel ich daran, da es unter Windows mit popen/pclose ohne Probleme funktioniert hatte.
 
Wo führst du das Script aus? Auf einem gemieteten Server ? Bei einem Hostingservice bei dem du ein Webspace Packet gekauft hast? ...

Falls du es auf deinem eigennen Server oder Lokal auf deinem eigennen Linux rechner ausprobierst könntest du mit folgendem Programm ja einmal versuchen ob es überhaupt funktioniert.
PHP:
$rHandle = popen('echo test 2>&1', 'r');
while (!feof($rHandle)) {
    echo fread($rHandle, 1024);
}
pclose($rHandle);

Als nächstes solltest du den aufruf deines Programmes ein wenig aufräumen.
PHP:
// erst den pfad des programmes, welches du aufrufen willst zusammenstellen
$sPath = path/to/programm;
$sRealPath = realpath('path/to/programm' . $mExtraVariable);
if (!$sRealPath) {
    echo 'Das Programm "' . $sPath . '" konnte nicht gefunden werden.';
    exit; // in deinem programm schreibst du natürlich kein exit sondern überlegst dir eine elegantere lösung ;P
}

// kannst du die datei überhaupt ausführen?
if (is_executable($sRealPath)) {
    echo 'nicht ausführbar...';
    exit;
}

$rHandle = popen($sRealPath, 'r');
// ... und so weiter

Und zu guter letzt frage ich mich, warum du popen verwendest, wenn dich die ausgabe des Scriptes augenscheinlich nicht interessiert und du nichts mit dem geöffnetem Programm anfangen willst.

lg
 
Zurück
Oben