Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Pfad auslesen und in eine Textdatei mit Zusatz werfen

Mitglied: marsu2

marsu2 (Level 1) - Jetzt verbinden

28.09.2011 um 21:48 Uhr, 2936 Aufrufe, 2 Kommentare

Hi

habe ein neues Anliegen, die einzelnen Komponenten sind eigentlich recht einfach aber ich komm nicht weiter.

Ich habe einen fest definierten Ordner der *.jpg enthält der soll nun ausgelesen werden und der absolute Pfad mit ein paar anderen Zeilen in eine Datei geschrieben werden.

Die Datei dient für eine Slideshow eines Programms, die Syntax ist immer die gleiche, ich füge mal eine Beispiel Datei an:

01.
  
02.
object PresentationSlideShow: TPresentationSlideShow 
03.
  SlideCollection = < 
04.
    item 
05.
      FileName = 'C:\sb\flyer\Angela 4.jpg' 
06.
    end 
07.
    item 
08.
      FileName = 'C:\sb\flyer\Angela 5.jpg' 
09.
    end 
10.
    item 
11.
      FileName = 'C:\sb\flyer\Angela 6.jpg' 
12.
    end 
13.
    item 
14.
      FileName = 'C:\sb\flyer\Angela 7.jpg' 
15.
    end 
16.
    item 
17.
      FileName = 'C:\sb\flyer\Putin 8.jpg' 
18.
    end 
19.
    item 
20.
      FileName = 'C:\sb\flyer\Angela 9.jpg' 
21.
    end> 
22.
  Loop = False 
23.
  FitToScreen = False 
24.
end


Es muss also zunächst der Anfang:

01.
  
02.
object PresentationSlideShow: TPresentationSlideShow 
03.
  SlideCollection = <
eingefügt werden
und danach um den Pfad herum für jeden EIntrag im Ordner
01.
item 
02.
      FileName = '
und
01.
02.
    end>
als Schwierigkeit kommt dazu dass die Zeilensprünge natürlich wichtig sind.

gibt es einen Befehl mit dem ich den kompletten Pfad auslesen kann oder muss ich an den Dateinamen dann noch den Pfad anhängen?

Und wie bekomme ich dann die übrigen Zeilen drum herum?

Fragen über Fragen
Mitglied: bastla
28.09.2011 um 22:06 Uhr
Hallo marsu2!

Versuch es mal so:
01.
@echo off & setlocal 
02.
set "Ordner=C:\sb\flyer" 
03.
set "Show=C:\TEMP\Slideshow.txt" 
04.
 
05.
 >"%Show%" echo\ 
06.
>>"%Show%" echo object PresentationSlideShow: TPresentationSlideShow 
07.
>>"%Show%" <nul set /p=  SlideCollection = ^< 
08.
for %%i in ("%Ordner%\*.jpg") do ( 
09.
    echo\ 
10.
    echo     item 
11.
    echo       FileName = '%%i' 
12.
    <nul set /p=    end 
13.
)>>"%Show%" 
14.
>>"%Show%" echo ^> 
15.
>>"%Show%" echo   Loop = False 
16.
>>"%Show%" echo   FitToScreen = False 
17.
>>"%Show%" echo end
Der "Trick" für das Schreiben ohne Zeilenschaltung verwendet eine (simulierte) Eingabe per "set /p" - "normal" sähe das zB so aus:
set /p Pfad=Bitte den Pfad eingeben: 
Es wird dabei der nach dem "=" angegebene Text als "Eingabeaufforderung" angezeigt, aber keine Zeilenschaltung angefügt, damit die Eingabe in der gleichen Zeile erfolgen kann.

Damit nicht auf die Eingabe gewartet werden muss, wird per Umleitung der Eingabe (mit "<nul") einfach die Eingabe von "Nichts" simuliert.

Im Batch wird diese Funktionalität eigentlich nur nach dem "end" der letzten Datei benötigt - da aber vorweg nicht bekannt ist, wann die letzte Datei erreicht ist, müssen alle Dateien in der Schleife gleich verabeitet werden; es wird daher schon die erste Zeile vor der Schleife ("SlideCollection = <") nicht mit einer Zeilenschaltung ausgegeben, sodass für jede Datei in der Schleife zunächst eine Zeilenschaltung ausgegeben werden (damit wird die nächst Zeile erreicht) und am Ende das "end" wieder so geschrieben werden kann, dass die Zeile vorerst nicht verlassen wird; nach der Schleife kann dann noch das schließende ">" angefügt werden.

Grüße
bastla
Bitte warten ..
Mitglied: marsu2
29.09.2011 um 11:11 Uhr
ach ne was geil,

klappt einwandfrei!!!

kann ich mich vielleicht mal mit einem Kasten Bier revanchieren?

Grüße

PS: danke für die Erklärung, so lerne ich auch noch dazu
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Textdatei mit Dateipfaden auslesen und die Dateien lt. dem Pfad downloaden

gelöst Frage von skiing69Batch & Shell5 Kommentare

Hallo, ich soll von einem Web-Server diverse Dateien automatisiert mit einem Batchprogramm downloaden. Die Dateipfade der einzelnen Dateien stehen ...

Batch & Shell

Einen bestimmten Teil einer Textdatei auslesen

gelöst Frage von Focus1610Batch & Shell5 Kommentare

Hallo, ich brauche mal einen Denkanstoß. Ich bekomme per FTP von einem Kunden täglich mehrere Textdateien. Diese haben unterschiudlich ...

Batch & Shell

Auslesen der "LAN-Verbinung" in eine Textdatei

gelöst Frage von simonsaysBatch & Shell2 Kommentare

Hallo Gleich mal vorab: Ich bin ein Batch-Nullinger :-) Wir verwenden fixe IP-Adressen und fixe DNS-Server Jetzt hätte ich ...

Batch & Shell

Batch Textdatei Spaltenweise auslesen

Frage von PinkFLuffyUnicornBatch & Shell7 Kommentare

hi, ist es irgendwie möglich anstatt eine Textdatei via Batch Spaltenweise auszulesen und nicht zeilenweise wie das normal ganz ...

Neue Wissensbeiträge
Sicherheit

Zero Day-Schwachstelle im Internet Explorer - wird von APT bereits ausgenutzt

Information von kgborn vor 10 StundenSicherheit

Im Kernel des Internet Explorer scheint es eine Zero Day-Lücke zu geben, die von staatlichen Akteuren (APT) im Rahmen ...

Microsoft
Folder Security Viewer-Lizenzen zu gewinnen
Information von kgborn vor 10 StundenMicrosoft

Ich nehme das Thema mal in Absprache mit Frank hier auf, da es für den einen oder anderen Administrator ...

Hardware

Feueralarm killt Festplatten in Rechenzentrum - führt zu größerem Ausfall

Information von kgborn vor 10 StundenHardware10 Kommentare

Noch ein kleiner Beitrag für Administratoren, die in Rechenzentren aktiv sind - so als Fingerzeig. Denn es gibt Szenarien, ...

MikroTik RouterOS

Mikrotik Advisory: Vulnerability exploiting the Winbox port

Information von colinardo vor 10 StundenMikroTik RouterOS

Brand aktuell: Eine Schwachstelle im Winbox-Port bei Mikrotik Routern erlaubt das Auslesen der User-Datenbank der Router. Patch ist aktuell ...

Heiß diskutierte Inhalte
Linux
Linux Server oder Windows Server - lohnt eine Umstellung auf Linux und ebenso basierende SW bei einer langfristigen Planung?
Frage von motus5Linux23 Kommentare

Wir brauchen bei uns einen neuen Server. Dieser wird als Fileserver, Domäne Controller sowie Exchange Server verwendet. Wir versuchen ...

DSL, VDSL
ISP Wechsel auf Vodefone Koax, Gebäudeverkabelung nur per Cat 7
gelöst Frage von wusa88DSL, VDSL18 Kommentare

Hallo Zusammen, ich bin momentan bei Mnet als Glasfaser Kunde und möchte Preis/Leistungs-Technisch zu Kabel Deutschland / Vodafone wechseln. ...

Windows Server
Domänencontroller trennen
Frage von Akit57Windows Server13 Kommentare

Hallo, ich hoffe das mir hier jemand meine Frage trotz der spärlichen Informationen die ich geben kann beantworten kann: ...

LAN, WAN, Wireless
Kommunikation zwischen verschiedenen IP-Bereichen
Frage von DirkHoLAN, WAN, Wireless13 Kommentare

Hallo zusammen, von Unitymedia habe ich ein neues Modem (Connect Box) erhalten, das u.a. IPv4 aber keinen Bridge Mode ...