• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

shellscript mit php ausführen

hallo zusammen....

ich möchte gern unter linux shellscripte mit php oder html ausführen...
hab da schon ein bißchen rumprobiert aber bin zu keiner lösung gekommen...

was ich schon probiert hab is folgendes...

exec("/usr/bin/touch xxxx.sh");

system("/usr/bin/touch xxxx.sh");

da müßte er ja eigentlich eine datei erstellen... aber ich bekomm das immer nur als text im browser angezeigt...
mittlerweile denk ich das ich in der http.conf oder in der php.ini noch irgendwas einstellen muß... aber natürlich weiß ich net was..

so das wars erstma...
 
Du bist glaub ich im falschen Forum. Wende dich an ein PHP-Forum, wenn du über Kommandos wie exec, system bzw. passthru Fragen hast.

Zu dem Problem mit mit deiner Ausgabe:

1. Prüfe ob deine PHP-Seite mit der Endung .php abgespeichert ist.
2. Ist auf deinen System php korrekt installiert und im apache richtig eingebunden?
3. Ist dein lokaler Webserver gestartet?
4. Funktionieren andere php-Seiten?

Schreibe folgende php-Seite (speichere sie als info.php) und kopier sie in dein document-root deines Webservers und gebe im Browser folgende URL ein: http://localhost/info.php

Code:
<?php
phpinfo();
?>

Wenn du nun im Browser Infos über deinen Webserver und andere Dinge siehst kannst du Punkt 1 bis 4 als Fehlerquelle ausschleißen.
Es könnte dann noch an Berechtigungsfragen liegen. Ansonsten php-Forum...


MfG NeoMan
 
Seh ich auch so. Ich verschiebs mal ins "Programmierung".

Guck auch mal hier:

http://www.phpforum.de/forum/index.php
 
Moin candyman666,

ich vermute mal das Du dem Ganzen noch mitgeben mußt WO er die Datei erstellen soll, also einen Pfad mitgeben. Ansonsten gibt er es halt auf die Standardausgabe, in deinem Fall also der Bildschirm. Aber mal eine andere Frage: Wieso arbeitest Du mit touch? touch ändert doch nur den Zeitstempel einer Datei. Mir ist ehrlich gesagt nicht ganz klar was Du da vorhast. Erklär es doch mal, für Doofe wie mich, mit anderen Worten.
 
das war nur ein einfaches beispiel zum testen... mit touch erstellt man doch auch die datei wenn sie net vorhanden ist... und das is am leichtesten nachzuprüfen ob es funktioniert....

wie gesagt nur ein kleines bsp. ich möchte gern per mausklick meinen winrechner über wol starten dann ein paar hd's ins ftp-verzeichnis mounten das ich zb vom i-net cafe auf meine daten zugreifen kann und mir dann auch was runterziehen kann....
dann alles wieder umounten und rechner mit telnet und shoutdown wieder runterfahren...

die scripte unter linux sind ja eigenlich kein problem, aber halt das mit dem php-kram.... und im cafe ist's mir zb auch schon passiert das der ssh-port gesperrt war....

axo.. das mit dem code
Code:
<?php 
phpinfo(); 
?>
funktioniert problemlos.....
 
Moin candyman666,

schau mal ob 'disable_funktions = ' in der php.ini einen Wert enthält. Ausgeschaltete Funktionen werden durch Kommata getrennt dort eingetragen. Und schau bei der Gelegenheit mal wie 'register_globals' gesetzt ist.
 
also bei disable funktions steht nix drin....
aber 'register_globals' steht auf off....
soll ich das auf on setzen?? was is das eingenlich für ne funktion????
 
Laß die register_globals bloß auf off. Ne größere Sicherheitslücke kannst Du dir nicht reißen! Ich muß jetzt erstmal selber testen was bei dir nicht läuft, kann ein bißchen was dauern.
 
habs grad gefunden....
sorry bin blöd...

hab immer bloß die 1 zeile in ne php datei reingeschrieben....
muß doch aber so aussehen

Code:
<?php 
exec("/usr/bin/touch /srv/www/htdocs/anzeige/xxxx.sh"); 
?>

geht alles...
vielen dank für die hilfe....
 
Aaaaargh, und dafür lade ich mir jetzt LAMPP runter (per ISDN) und fang an zu testen was bei dir schief gegangen sein könnte! Naja, anyway, dann kann ich ja mal anfangen meine eingestaubten PHP Kenntnisse wieder aufzufrischen.
 
Oben