Cachen des Board Index für Gäste

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Fähnchen
Ehemaliges Teammitglied
Beiträge: 2124
Registriert: 14.08.2004 23:38

Cachen des Board Index für Gäste

Beitrag von Fähnchen »

Ich kämpfe nun schon seit 2 Tagen mit diesem Tutorial von phpbb.de:
KB:cache_index

Irgendwo ist in meinem Script noch der Wurm drin.
Vielleicht kann da jemand mehr entdecken, denn ich bekomme aktuell immer wieder die Fehlermeldung ...

/pfad/zu/wget$ ./cache.sh
-bash: ./cache.sh: /bin/bash: bad interpreter: Datei oder Verzeichnis nicht gefunden


Hier ist einmal mein Skript das augeführt werden soll:

Code: Alles auswählen

#!/bin/bash
cd /pfad/zu/wget/temp
rm *.html
for i in cat ´../urls.list´; do
            # möglicherweise defekte vorherige downloads löschen
            /bin/rm -f *.html
            /usr/bin/wget $i -E -U Cache-Skript && mv *.html ../
done;
(Den Pad zum wget-Verzeichnis habe ich hier absichtlich unkenntlich gemacht.)

Kann von euch jemand erkennen warum es so nicht funktioniert?
Für mich sieht alles richtig aus. :o
Wäre froh wenn es endlich mal reibungslos klappen würde.
Ein paar Augen mehr sehen manchmal mehr als 2. :wink:
Die Signatur hat Urlaub.
Jensemann
Ehemaliges Teammitglied
Beiträge: 2549
Registriert: 25.02.2002 01:00

Re: Cachen des Board Index für Gäste

Beitrag von Jensemann »

Fähnchen hat geschrieben: /pfad/zu/wget$ ./cache.sh
-bash: ./cache.sh: /bin/bash: bad interpreter: Datei oder Verzeichnis nicht gefunden
/bin/bash existiert nicht ... Windows Maschine? Apache im Chroot?
Fähnchen
Ehemaliges Teammitglied
Beiträge: 2124
Registriert: 14.08.2004 23:38

Re: Cachen des Board Index für Gäste

Beitrag von Fähnchen »

jensemann hat geschrieben:/bin/bash existiert nicht ... Windows Maschine? Apache im Chroot?
Merkwürdig.
/bin/bash existiert eindeutig. Ich kann die Datei doch sehen.
Es ist ein Apache Server, ja, OS Debian Sarge
Die Signatur hat Urlaub.
Jensemann
Ehemaliges Teammitglied
Beiträge: 2549
Registriert: 25.02.2002 01:00

Beitrag von Jensemann »

Vergiss das mit dem Apache ...

Hat das Script Ausführungsrechte? chmod +x cache.sh? Auch wenn das normalerweise eine andere Fehlermeldung geben sollte ...

Falls es daran auch nicht liegt, was passiert wenn du "bash cache.sh" aufrufst?
Fähnchen
Ehemaliges Teammitglied
Beiträge: 2124
Registriert: 14.08.2004 23:38

Beitrag von Fähnchen »

jensemann hat geschrieben:Hat das Script Ausführungsrechte? chmod +x cache.sh? Auch wenn das normalerweise eine andere Fehlermeldung geben sollte ...
Ja, das Script ist ausführbar. Das habe ich nochmal geprüft und testweise neu gesetzt.
jensemann hat geschrieben:Falls es daran auch nicht liegt, was passiert wenn du "bash cache.sh" aufrufst?
Dann passiert das:
/pfad/zu/wget$ bash cache.sh
cache.sh: line 2: cd: /pfad/zu/wget/temp: No such file or directory
rm: cannot remove `*.html\r': No such file or directory
cache.sh: line 4: syntax error near unexpected token `do'
cache.sh: line 4: `for i in cat ´../urls.list´; do'
Das sieht doch schon etwas informativer aus :)
Die Signatur hat Urlaub.
Jensemann
Ehemaliges Teammitglied
Beiträge: 2549
Registriert: 25.02.2002 01:00

Beitrag von Jensemann »

1. Pfad zum wget Dir fixen
2.

Code: Alles auswählen

for i in `cat ../urls.list´; do
Fähnchen
Ehemaliges Teammitglied
Beiträge: 2124
Registriert: 14.08.2004 23:38

Beitrag von Fähnchen »

jensemann hat geschrieben:1. Pfad zum wget Dir fixen
:-? Da gibt es nichts zu fixen, der stimmt.
/home/www/webxy/html/wget$ bash cache.sh
cache.sh: line 2: cd: /home/www/webxy/html/wget/temp: No such file or directory
rm: cannot remove `*.html\r': No such file or directory
cache.sh: line 4: unexpected EOF while looking for matching ``'
cache.sh: line 9: syntax error: unexpected end of file
Das bekomme ich jetzt mit bash cache.sh

Code: Alles auswählen

#!/bin/bash
cd /home/www/webxy/html/wget/temp
rm *.html
for i in `cat ../urls.list´; do
            # möglicherweise defekte vorherige downloads löschen
            /bin/rm -f *.html
            /usr/bin/wget $i -E -U Cache-Skript && mv *.html ../
done;
Die Signatur hat Urlaub.
Jensemann
Ehemaliges Teammitglied
Beiträge: 2549
Registriert: 25.02.2002 01:00

Beitrag von Jensemann »

Fähnchen hat geschrieben:
jensemann hat geschrieben:1. Pfad zum wget Dir fixen
:-? Da gibt es nichts zu fixen, der stimmt.
Kann ja nicht, dann würde cd ja nicht sagen das es da nicht rein kommt.

file /home/www/webxy/html/wget sagt was?
Fähnchen hat geschrieben: rm: cannot remove `*.html\r': No such file or directory
Folgefehler von 1. Aber das \r macht mich stutzig ... hast du die Datei zufällig unter Windows erstellt und dann hochgeladen und dabei vergessen die Zeilenumbrüche von Windows nach Unix zu konvertieren?
Fähnchen hat geschrieben: cache.sh: line 4: unexpected EOF while looking for matching ``'
Du hast um das cat ... rum ' und ` gemischt, zumindest laut der Fehlermeldung.
Fähnchen hat geschrieben: cache.sh: line 9: syntax error: unexpected end of file
Folgefehler von Zeile 4.
Fähnchen
Ehemaliges Teammitglied
Beiträge: 2124
Registriert: 14.08.2004 23:38

Beitrag von Fähnchen »

jensemann hat geschrieben:file /home/www/webxy/html/wget sagt was?
Folgendes:
/$ file /home/www/webxy/html/wget
/home/www/webxy/html/wget: directory
jensemann hat geschrieben:hast du die Datei zufällig unter Windows erstellt und dann hochgeladen und dabei vergessen die Zeilenumbrüche von Windows nach Unix zu konvertieren?
Ja, ich habe die Datei unter Windows erstellt und im Reintext-Modus hochgeladen.
Der Quellcode sieht zumindest bei mir so aus:

Code: Alles auswählen

#!/bin/bash
cd /home/www/webxy/html/wget/temp
rm *.html
for i in `cat ../urls.list#´; do
            # möglicherweise defekte vorherige downloads löschen
            /bin/rm -f *.html
            /usr/bin/wget $i -E -U Cache-Skript && mv *.html ../
done;
Schon ziemlich merkwürdig.
Die Signatur hat Urlaub.
Jensemann
Ehemaliges Teammitglied
Beiträge: 2549
Registriert: 25.02.2002 01:00

Beitrag von Jensemann »

Jau, habs eben mal per Copy & Paste getestet, das was in deinem Text ist, sieht nur aus wie ` `, eins davon ist aber keins :D

Strange.

Habe dir das eben mal per HTTP bereitgestellt das Script, notwendige Änderungen führst du bitte direkt auf der Linux Kiste aus, per vim, mc, nano oder was dir beliebt. Finger Weg von Windows Editoren in deinem Fall ;-)

wget http://simple-tech.de/cache-script-phpbb.txt

Natürlich noch umbenennen anschliessend.
Antworten

Zurück zu „Coding & Technik“