flx1990
Goto Top

Zwei Leerzeichen und einen Umbruch entfernen?

Hallo,

habe folgendes Problem:

Mein Script soll mir aus mehreren Code-Schnippseln eine Webseite zusammen basteln.

Script:
cat starttag > index.php

for /F %%i in ('dir /B *.jpg') do cat openimgtag >> index.php && echo %%~ni >> index.php && cat endimgtag >> index.php  

cat endtag >> index.php

starttag:
<head><meta http-equiv="refresh" content="60" /></head>  
<script type="text/javascript" src="jquery-2.0.0.js"></script>  
<script type="text/javascript" src="coin-slider.min.js"></script>  
<link rel="stylesheet" href="coin-slider-styles.css" type="text/css" />  

<div id='coin-slider'>  


openimgtag:
<img src='  


closeimgtag:
.jpg' >  


endtag:
</div>

<script type="text/javascript">  
	$(document).ready(function() {
		$('#coin-slider').coinslider({ width: 1920, height: 1080, effect: 'no', navigation: false, hoverPause: false, delay: 5000 });  
	});
</script>



Nur leider sieht das Ergebnis am Ende so aus:
<head><meta http-equiv="refresh" content="60" /></head>  
<script type="text/javascript" src="jquery-2.0.0.js"></script>  
<script type="text/javascript" src="coin-slider.min.js"></script>  
<link rel="stylesheet" href="coin-slider-styles.css" type="text/css" />  

<div id='coin-slider'>  
<img src='pic-0    
.jpg' >  
<img src='pic-1    
.jpg' >  
</div>

<script type="text/javascript">  
	$(document).ready(function() {
		$('#coin-slider').coinslider({ width: 1920, height: 1080, effect: 'no', navigation: false, hoverPause: false, delay: 5000 });  
	});
</script>


Das Script haut mir in die img-Tags vor dem endimgtag zwei Leerzeichen und einen Umbruch rein.
Ich weiß nicht warum...

Wie kann ich das umgehen?

gruß,
Sibbel

Content-ID: 206148

Url: https://administrator.de/contentid/206148

Ausgedruckt am: 23.11.2024 um 03:11 Uhr

Endoro
Endoro 07.05.2013 um 13:42:23 Uhr
Goto Top
Hallo Sibbel,

könntest du den Code in Tags packen, ich kann den so nicht lesen. Was ist "cat"? Google meint, der "city airport train" ...

Gruss!
FLX1990
FLX1990 07.05.2013 um 14:01:51 Uhr
Goto Top
wie heißt den der Tag für Code?
funktioniert irgendwie nicht.

cat ist wie das cat unter Linux, also einfach den Inhalt der Datei als Text auf die Standardausgabe
Endoro
Endoro 07.05.2013 um 14:07:20 Uhr
Goto Top
Ich wusste gar nicht, dass es da auch solche Forschleiben gibt face-smile. Naja, das Formatieren ist in der "FAQ" (Link rechts oben) beschrieben.
Gruss!
FLX1990
FLX1990 07.05.2013 um 14:22:47 Uhr
Goto Top
Haha das wusst ich nämlich auch nicht.
Hat mit dann ein Kollege geflüstert...

So Text ist formatiert...
Xolger
Xolger 07.05.2013 um 15:57:46 Uhr
Goto Top
Hallo Sibbel,


das "Problem" ist der echo-Befehl:

http://ss64.com/bash/echo.html
"Display message on screen, writes each given STRING to standard output, with a space between each and a newline after the last one"

Da kommt auf alle Fälle der Zeilenumbruch her.

Bin jetzt auf der Shell von Linux nicht ganz so fit um dir zu sagen wie du das umgehen kannst


Gruß
Xolger
bastla
bastla 07.05.2013 aktualisiert um 16:26:16 Uhr
Goto Top
Hallo Sibbel!

Warum schreibst Du
<img src='
und
.jpg' >
nicht einfach direkt? Ungetestet etwa so:
for /F %%i in ('dir /B *.jpg') do >>index.php echo ^<img src='%%~ni.jpg' ^>
Wenn ".jpg" bei allen Dateien bereits in Kleinbuchstaben geschrieben sein sollte, ließe sich das noch auf
for %%i in (*.jpg) do >>index.php echo ^<img src='%%~nxi' ^>
verkürzen ...
BTW: Für das Ausgeben eines Dateiinhaltes nach STDOUT gibt es in Batch "type" oder "more" ...
[Edit] Falls das direkte Schreiben doch keine Option sein sollte:
for %%i in ('*.jpg') do (  
    type openimagetag
    <nul set /p=%%~ni
    type closeimagetag
    echo(
)>>index.php
[/Edit]

Grüße
bastla
FLX1990
FLX1990 08.05.2013 um 08:19:28 Uhr
Goto Top
Ahh super es funktioniert
dankeschön :D

Hät ich gleich alles zusammens chreiben sollen, aber ich bekam immer Fehler weil ich nicht wusste wie ich richti maskiere...

Gekürzt sieht mein Script jetzt so aus:
type starttag > index.php

for /F %%i in ('dir /B *.jpg') do >> index.php echo ^<img src='%%~nxi' ^>  

type endtag >> index.php

solved