ERLEDIGT
NEIN
NEIN
ANTWORTEN
5
5
ZUGRIFFE
467
467
EMPFEHLEN
-
Hi,
ich möchte via Shell-Script alle PHP-Dateien in einem bestimmten Verzeichnis auf meinem Server ausführen.
So habe ich es versucht:
Code :1 2 3 4 5
#!/bin/sh foreach filename in /var/www/domain.de/httpdocs/php/* do wget http://www.domain.de/$filename > /dev/null done;
Problem ist, dass in der Variable $filename der gesamte Pfad zur Datei gespeichert wird und nicht nur der Dateiname. Wie kann ich das verhindern bzw. was gibt es noch für Möglichkeiten?
-
Du koenntest sowas machen:
pushd ist cd recht aehnlich. Jedoch haelt es in einem Stack fest durch welche es wechselt. Mit popd (siehe Ende des Scripts) kannst Du dann wieder zurueckkehren wo Du herkamst, ohne wissen zu muessen wo das war.Code bash:1 2 3 4 5 6 7
#!/bin/sh pushd /var/www/domain.de/httpdocs/php/ foreach filename in * do wget http://www.domain.de/$filename > /dev/null done; popd
PHP Class Collection - PHP-Klassen fuer PHP 5 (und Teilweise auch fuer PHP 4)
Updates: Catcher 1.1, FTPConnection 1.2, MultiSQL 1.1, RSS2 1.1, SMTPConnection 1.4
__________________
EasyLFS - Hintergrundinformationen, Installationsanleitung, Softwareliste und Download
EasyLFS Projektthread - Informationen, Status und Diskussion zu meiner Linux-Distribution
__________________
__________________Ich bin die Schildkroete, mein Sohn. Ich habe das Universum erschaffen, aber bitte mach mir daraus keinen Vorwurf; ich hatte Bauchschmerzen.
Zitat von Friedrich Nietzsche
-
Funktioniert schon mal super vielen Dank.
Wenn ich mir die Zeilen mit echo ausgeben lassen, zeigt er allerdings auch den Pfad an den er mit pushd aufgerufen hat. Lässt sich die Ausgabe unterdrücken?
Das gibt er mir aus:
Code :1 2 3 4
/var/www/domain.de/php/ /var/www/domain.de/ [url]http://www.domain.de/php/test1.php[/url] [url]http://www.domain.de/php/test2.php[/url] /var/www/domain.de/
-
Haeng einfach > /dev/null hinter pushd und popd, dann wird diese Ausgabe in's Nirwana geschickt.
PHP Class Collection - PHP-Klassen fuer PHP 5 (und Teilweise auch fuer PHP 4)
Updates: Catcher 1.1, FTPConnection 1.2, MultiSQL 1.1, RSS2 1.1, SMTPConnection 1.4
__________________
EasyLFS - Hintergrundinformationen, Installationsanleitung, Softwareliste und Download
EasyLFS Projektthread - Informationen, Status und Diskussion zu meiner Linux-Distribution
__________________
__________________Ich bin die Schildkroete, mein Sohn. Ich habe das Universum erschaffen, aber bitte mach mir daraus keinen Vorwurf; ich hatte Bauchschmerzen.
Zitat von Friedrich Nietzsche
-
Super genial. Danke dir!
Jetzt ist mir doch noch was aufgefallen.
Wenn die Dateien mit dem Script aufgerufen werden, wird eine Datei mit dem gleichen
Dateinamen erzeugt und die Endung wird mit .1 erweitert. Also z.B. test1.php.1.
Woran könnte das liegen?Geändert von thefaxx (23.03.09 um 10:23 Uhr)
-
02.04.09 08:43 #6
- Registriert seit
- Jun 2005
- Beiträge
- 8.169
Das liegt einfach an der Arbeitsweise von wget. Du mußt wget einfach mit den richtigen Optionen aufrufen - siehe man wget.
Wenn du die PHP Skripte nur ausführen und nicht runterladen willst, dann verwende einfach die Option -O /dev/null.
GrußIf at first you don't succeed, try again. Then quit. No use being a damn fool about it.
Ähnliche Themen
-
Shell Script und PHP
Von X-Press im Forum PHPAntworten: 2Letzter Beitrag: 26.09.07, 10:00 -
Brauche Shell script Hilfe - Dateinamen auslesen und sequenzen im string speichern
Von treki im Forum Linux & UnixAntworten: 3Letzter Beitrag: 04.06.07, 07:43 -
Dateinamen in Ordner auslesen mit VB-Script
Von Choco2 im Forum Visual Basic 6.0Antworten: 1Letzter Beitrag: 11.08.06, 07:52 -
Shell-Script funktioniert nicht als Script
Von Mindwinder im Forum Linux & UnixAntworten: 15Letzter Beitrag: 03.05.06, 15:29 -
[Shell] Bilder-Liste aus Verzeichnis, danach als Parameter übergeben
Von Daxi im Forum Linux & UnixAntworten: 2Letzter Beitrag: 27.12.04, 16:04





Zitieren

Login





