Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Überprüfen, ob eine Datei leer ist

Frage Entwicklung Batch & Shell

Mitglied: Flauschbobbel

Flauschbobbel (Level 1) - Jetzt verbinden

18.09.2008, aktualisiert 20:28 Uhr, 7059 Aufrufe, 2 Kommentare

Hallo Zusammen,

ich habe ein sehr grosses Problem und ich hoffe ihr könnt mir weiterhelfen.
ich versuche per Batch zu überprüfen, ob eine Date leer ist. Dabei handelt es sich um eine csv-Datei, die maximal eine Zeile, den Header enthält. Wenn sonst ausser dem Header nichts drin steht, soll sie für das Skript "leer" sein.
Meine Datei mit Header ist also wenn sie leer ist maximal 290 Byte groß.

Ich habe nun ein Skript gebaut, hier der Ausschnitt:
01.
  
02.
.. 
03.
	set InputListe="%scriptdir%rt.csv" 
04.
	set InputListeLocal="%scriptdir%rt_local.csv" 
05.
... 
06.
 
07.
::	Wenn leere neue rt.csv vom FTP (<=291 bytes), dann benutze lokale 
08.
	for %%R in ("%InputListe%") do if %%~zR leq 291 ( 
09.
		call :WRITELOG "FTP-Datei leer! Benutze lokale rt.csv" 
10.
			if exist %InputListeLocal% ( 
11.
	  	 		del /F %InputListe% >NUL 
12.
				copy /Y %InputListeLocal% %InputListe% >NUL 
13.
				del /F %InputListeLocal% >NUL 
14.
15.
16.
...
Aber es funktioniert nicht . Ich hole mir eine "gefüllte Datei (viel größer als 291 byte) vom Server, trotzdem behauptet das Script die Datei wäre leer.
Was mache ich falsch, ich sehe meinen Fehler nicht.
Bitte helft mir! Ich brauche dieses Skript für unsere SW-Verteilung bis morgen und bin im Moment ziemlich ratlos...

Danke Flauschbobbel
Mitglied: bastla
18.09.2008 um 18:23 Uhr
Hallo Flauschbobbel!

Wenn Du schon beim "set" den Pfad mit Anführungszeichen angibst, brauchst Du die nicht auch noch in der "for"-Zeile - daher:
01.
for %%R in (%InputListe%) do if %%~zR leq 291 (
BTW: In einem Batch ist der "copy"-Schalter "/Y" entbehrlich ...

Grüße
bastla
Bitte warten ..
Mitglied: Flauschbobbel
18.09.2008 um 20:28 Uhr
Hallo bastla,

vielen herzlichen Dank!!!
Yep, das war das Problem. Es funktioniert! Manchmal ist man wirklich blind.

Nochmals vielen Dank und viele Grüße,
Flauschbobbel
Bitte warten ..
Neuester Wissensbeitrag
DSL, VDSL

Telekom versendet automatische Kündigungen

Erfahrungsbericht von Voiper zum Thema DSL, VDSL ...

Ähnliche Inhalte
C und C++
gelöst Datei-Managment (C++) (9)

Frage von clragon zum Thema C und C ...

Linux
Rdesktop Linux Benutzername leer lassen (3)

Frage von opc123 zum Thema Linux ...

Batch & Shell
gelöst Schreiben eines Strings mit Leerzeichen in eine Datei (6)

Frage von c20082005 zum Thema Batch & Shell ...

VB for Applications
gelöst VB Skript Excel Datei (3)

Frage von Frager zum Thema VB for Applications ...

Heiß diskutierte Inhalte
Windows 7
gelöst BOOTMGR is missing (auch nach bootrec -RebuildBcd) (21)

Frage von Mipronimo zum Thema Windows 7 ...

Router & Routing
Tipps für Router (ca. 100 clients, VPN) (20)

Frage von oel-auge zum Thema Router & Routing ...

Windows Userverwaltung
Windows Freigabe: Zugriff auf alle Ordner trotz Sicherheitseinstellungen (18)

Frage von Pandreas zum Thema Windows Userverwaltung ...

Exchange Server
gelöst MS Exchange 2016 - Basicconfig Fragen (16)

Frage von maddig zum Thema Exchange Server ...