PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Skriptausgabe in HTML-Datein umwandeln. Komische Endung!



simplex
29.12.2004, 14:01
Hallo,

zur Zeit machen wir eine Bash-Einführung in der Schule. Ich habe folgendes Skript angefertigt, dessen "Echo-Inhalt" in eine *.html Datei umgeleitet werden soll. Jedoch kommt erzeugt das Skript keine richtige *.html Datei sondern eine komische endung wie: *.html?) (also eigentlich so nen kästchen hinter html). Ich komme einfach nicht mehr weiter..weiß jemand woran es liegt? Mein Lehrer weiß, woran es liegt und ich hab schon so viele Bücher durchgelesen u.s.w

Wäre kewl, also bis dann!!

Micha

datum=$(date +%d.%m.%y)
time=$(date +%T)
ping=$(ping 192.168.0.1 -c 1)
echo "
<html>
<head>
<title>Ping - Test</title>
</head>

<body>
<p align="center"><img src="ping.gif" width="400" height="208"></p>
<p>&nbsp;</p>
<table width="46%" border="1" align="center" cellspacing="2">
<tr>
<td width="35%" bgcolor="#000000"><strong><font color="#FFFFFF">Anzupingender
Host</font></strong></td>
<td width="65%"><div align="center"><strong>192.168.0.2</strong></div></td>
</tr>
<tr>
<td><strong>Datum</strong></td>
<td bgcolor="#000000">
<div align="center"><font color="#FFFFFF"><strong>$datum</strong></font></div></td>
</tr>
<tr>
<td bgcolor="#000000"><strong><font color="#FFFFFF">Uhrzeit</font></strong></td>
<td><div align="center"><font color="#000000"><strong>$time</strong></font></div></td>
</tr>
</table>
<p>&nbsp;</p>
<table width="21%" border="1" align="center" cellspacing="2">
<tr>
<td bgcolor="#000000"><div align="center"><font color="#FFFFFF"><strong>Ping
- Ergebnis</strong></font></div></td>
</tr>
</table>
<table width="75%" border="1" align="center" cellspacing="2">
<tr>
<td><div align="center"><strong>$ping</strong></div></td>
</tr>
</table>
<p>&nbsp;</p>
<p><strong><div align="right">(c) by Michael Frömel</strong>
</body>
</html>
">pingtest.html

Zero
29.12.2004, 14:08
moin,


also ich hab dein script mal bei mir ausprobiert und es funktioniert einwandfrei.
Die Datei wird als *html gespeichert und ich kann sie mit firefox öffnen,
dass einzige was nicht geht, ist dass in der Mitte das Bild nicht angezeigt wird.
Was aber logisch ist, da ich das bild nicht auf meinem rechner hab.

Ansonsten geht alles.

Hab alles in ne Datei kopiert,
diese in "test.sh" bennannt und mit "sh test.sh" ausgeführt.

Es funktioniert.

qmasterrr
29.12.2004, 14:31
bei mir klappt es auch

simplex
30.12.2004, 13:41
ja bei mir auf dem rechner Suse Linux 9.2 funktioniert es auch einwandfrei..jedoch nicht auf den Rechnern in der Schule wo Suse Linux 8.1 (oder 8.2) installiert ist..mein Lehrer weiß ja wo der Fehler liegt..nur ich bin am verzweifeln /=

naja, was solls *gg* thx schon mal an euch 2

Schlaubi_fi.de
30.12.2004, 16:02
Ich könnte mir vorstellen, dass es an der Version der Shell liegt. Prüf' doch einfach mal ob die Shell, die du zuhause benutzt sich mit der, die du in der Schule benutzt unterscheidet.


Mach ein set -x am Anfang deines Skripts und du bekommst etwas Debug-Output.

qmasterrr
30.12.2004, 16:05
wenn dein lehrer weiß wo der fehler liegt, wieso sagt er es dir dann nicht?

btw habt ihr nicht gelernt am anfang des scriptes den interpreter anzugeben?
zb:
#!/bin/bash

TenBaseT
30.12.2004, 18:49
wenn dein lehrer weiß wo der fehler liegt, wieso sagt er es dir dann nicht?Er/Sie sollst es ja lernen. Und wenn man es einfach sagt, dann wird das ganz schnell wieder vergessen. Was man sich hart erarbeitet, das sitzt! Muss ich nach 25 Jahren Computerei immer wieder feststellen :think:


Hans

thorus
30.12.2004, 19:04
Die Anführungszeichen (") müssen escaped (\") werden!
In deinem Fall ist es aber einfacher einfach die Hochkommata (') zu benutzen um den Inhalt zu umschließen, weil dann die normalen Anführungszeichen nicht mehr beachtet werden.

Es wird jedoch die richtige HTML-Datei zurückgeliefert, weil der Inhalt echo richtig als Kommandozeilenparameter übergeben wird, wenn auch ohne diese Anführungszeichen natürlich.

simplex
30.12.2004, 20:49
halli hallo (=

also in dem skript befinden sich schon lange nicht mehr die hochkommas (")
jedoch hatte das keine auswirkung auf das skript..

über den intepreter haben wir da auch schon diskutiert und mein lehrer meinte daran wird es wohl nicht liegen..ich werde es ja bald wieder testen können, wenn die schule anfängt..und genau, wenn ich doch sofort alles gesagt bekomme, isses dumm ^^ :] fehler sind da, um sie selber beheben zu können *gg*

danke aber trotzdem für die guten antworten =) hoffentlich löse ich damit auch das problem *fg*