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 TXT Dateien nur verschieben wenn größer 0kb

Mitglied: reinhr

reinhr (Level 1) - Jetzt verbinden

24.04.2008, aktualisiert 26.04.2008, 7375 Aufrufe, 11 Kommentare

Hallo Forum,

ich habe eine Buchungssoftware die pro Buchung eine Transaktionsdatei (TXT) liefert.
Nach erfolgreicher Buchung wird automatisch eine TXT-Datei in C:\TMP geschrieben.
Unmittelbar danach wird eine move.bat ausgeführt.
Diese move.bat dient dazu die Dateien auf den Server zu schieben.

MOVE.BAT
C:\Programme\...\Wait.exe 2
move c:\TMP\*.* C:\LIVE\
C:\Programme\...\Wait.exe 2
\\nvgm028\SYS\Datei_Aus_LIVE_Holen.bat

Mein Problem ist, dass die verschobenen TXT-Dateien manchmal (wirklich selten), auf dem Server mit 0kb ankommen.
Von der WAIT.EXE möchte ich weg kommen. Das ist nicht die Lösung!

Ich möchte, das nur die TXT-Dateien verschoben werden, die größer 0kb sind.
Somit sollte sicher gestellt sein, dass nur Dateien mit Inhalt, also größer 0kb, dort hin verschoben werden.

Hat hier jemand eine Lösung für mich?

Danke und Gruß
Roland
Mitglied: paulepank
24.04.2008 um 21:15 Uhr
Hallo Roland,

kann so aussehen:

01.
for /f %%i in ('dir c:\tmp /b /a-d') do if %~zi gtr 0 move "c:\tmp\%%i" c:\LIVE\
cu paulepank
Bitte warten ..
Mitglied: reinhr
24.04.2008 um 21:45 Uhr
Hallo paulepank,

sieht ja einfach aus - geht aber nicht!
Muß ich noch was verändern?
Eigentlich nicht oder?

cu Roland
Bitte warten ..
Mitglied: bastla
24.04.2008 um 22:22 Uhr
Hallo reinhr!

Da ist paulepank ein "%"-Zeichen von der Schippe gesprungen:
01.
for /f %%i in ('dir c:\tmp /b /a-d') do if %%~zi gtr 0 move "c:\tmp\%%i" c:\LIVE\
Grüße
bastla
Bitte warten ..
Mitglied: paulepank
24.04.2008 um 22:29 Uhr
Hallo Bastal,

leider Ja

aber es geht bei mir mit der Angabe von c:\tmp in ('dir c:\tmp /b /a-d') auch nicht.
Hatte es ohne Verzeichnisangabe am Prompt getestet.

deshalb mein Workaround:
01.
cd c:\tmp 
02.
for /f "delims=" %%i in ('dir /b /a-d') do if %%~zi gtr 0 move "c:\tmp\%%i" c:\LIVE\
cu paulepank und Sorry
Bitte warten ..
Mitglied: bastla
24.04.2008 um 22:40 Uhr
@paulepank
Ich tendiere eher zu "pushd" / "popd" - damit wird auch (bei Bedarf) das Laufwerk gewechselt (ginge aber auch mit "cd /d").
Wenn nicht angenommen werden muss, dass es Unterverzeichnisse mit ".txt" gibt, reicht auch:
01.
for %%i in (C:\tmp\*.txt) do if %%~zi gtr 0 move "%%~fi" c:\LIVE\
Grüße
bastla
Bitte warten ..
Mitglied: paulepank
24.04.2008 um 23:12 Uhr
@bastla,
ja das ist besser.
Wobei es mich doch interessiert , wieso das ('dir c:\tmp /b /a-d') keine Größenangabe listet.

cu paulepank
Bitte warten ..
Mitglied: bastla
24.04.2008 um 23:22 Uhr
@paulepank

Ein
01.
dir c:\tmp /b /a-d
(ohne /s) liefert nur den reinen Dateinamen als "Text", aber nicht ein "Dateiobjekt" - als Pfad (falls benötigt) wird der des aktuellen Verzeichnisses angenommen (kannst Du zB bei Ausgabe eines "%%~fi" sehen).

Grüße
bastla
Bitte warten ..
Mitglied: paulepank
24.04.2008 um 23:59 Uhr
@bastla

Danke für die Erklärung

@Roland

such dir eine Lösung raus.

meine korrigierte Version ist dann:
01.
for /f "delims=" %%i in ('dir c:\tmp /b /a-d /s') do if %%~zi gtr 0 move "%%i" c:\LIVE\
cu paulepank und gute Nacht
Bitte warten ..
Mitglied: Biber
26.04.2008 um 02:36 Uhr
[Haarspaltemodus an]
@reinhr
Wenn wirklich nur Datei größer 1 KB kopiert werden sollen, dann muss der Vergleich von "gtr 0" auf "gtr 1024" geändert werden.

@bastla
Wenn nicht angenommen werden muss, dass es Unterverzeichnisse mit ".txt" gibt, reicht auch:
for %%i in (C:\tmp\*.txt) do if %%~zi gtr 0 move "%%~fi" c:\LIVE\
Genauer gesagt, es ist vollkommen egal, ob s auch Unterverzeichnisse gibt, die "whatever.txt" heißen
Denn die haben als %[%]~zi-Größenangabe bei M$ immer den Wert 0.
[/Haarspaltemodus aus]

Von daher tendiere ich eindeutig zu dieser von Dir vorgeschlagenen Variante.

Grüße
Biber
Bitte warten ..
Mitglied: bastla
26.04.2008 um 09:59 Uhr
@Biber
Und um das Ganze abzurunden (und mich endgültig zu korrigieren): Ein einfaches "for" liefert ohnehin nur Dateien ...

Grüße
bastla
Bitte warten ..
Mitglied: paulepank
26.04.2008 um 10:00 Uhr
[das vorletzte Wort haben]
@Biber
[Haarspaltemodus an]
@reinhr
Wenn wirklich nur Datei größer 1 KB kopiert werden sollen, dann muss der
Vergleich von "gtr 0" auf "gtr 1024" geändert werden.

in der Nacht hast du wohl ein kleines Becks zu viel ...

in der Titelzeile steht doch deutlich größer 0kb

[/das vorletzte Wort haben]

cu paulepank
Bitte warten ..
Ähnliche Inhalte
Windows Server
PS Dateien löschen mit 0kb
gelöst Frage von Florian86Windows Server4 Kommentare

Hallo, ich habe auf unseren Fileserver immer wieder das Problem, das Temporäre Officedateien mit 0KB überbleiben und dies es ...

Batch & Shell

Größe einer Datei per BATCH in eine TXT schreiben

gelöst Frage von marvinplBatch & Shell5 Kommentare

Hallo erstmal und danke, dass du meine Frage geöffnet hast. Ich möchte auf Servern von uns und unseren Kunden ...

Windows 7

TXT-Datei plötzlich 0 KByte groß

gelöst Frage von SebastianJuWindows 715 Kommentare

Hallo, ich hatte eine TXT-Datei in Bearbeitung als der Festplattenspeicher auf 0 Byte ging. Aus irgendeinem Grund total voll ...

Batch & Shell

Maximale Größe zu verarbeitender txt-Dateien mit Batch

Frage von Muck1303Batch & Shell5 Kommentare

Hallo zusammen, ich habe vor einigen Tagen begonnen mich in Batch einzuarbeiten und bin ein Neuling hier. Mein Ziel ...

Neue Wissensbeiträge
Multimedia & Zubehör
AVM Fritz USB WLAN Sticks schneller einschalten
Tipp von NetzwerkDude vor 1 TagMultimedia & Zubehör1 Kommentar

Die AVM Fritz WLAN Sticks haben in der Firmware 2 Modis: Einmal als Massenspeicher und einmal als WLAN Netzwerkkarte ...

Windows Server

Windows Server Backup schlögt Fehl -Lösung 2008-2016

Tipp von BiGnoob vor 1 TagWindows Server

Hi zusammen , ich möchte gerne einen Lösungstipp abgeben für folgenden fehler: lösung ist folgende:

Humor (lol)
Telekom vs. O2 - 3:2
Erfahrungsbericht von the-buccaneer vor 2 TagenHumor (lol)4 Kommentare

Unglaublich aber wahr: Nachdem mein privater Anschluss am 19.04.18 auf VOIP und VDSL umgestellt wurde, hatte ich seitdem 1,5 ...

Batch & Shell

Windows 10 Heimnetzgruppe abgeschaft. Ein Script für einfache Netzwerk - Freigabe im Heimnetzwerk

Anleitung von treehe vor 2 TagenBatch & Shell3 Kommentare

Anleitung für eine einfache Netzwerkfreigabe unter Windows 10 Wie weiter hab mal ein kleines CMD - Script gebastelt. Womit ...

Heiß diskutierte Inhalte
Windows Server
Windows Server 2012 - Update - Beim Booten bleibt der Server beim Windows Zeichen stehen
Frage von KeilbachWindows Server17 Kommentare

Hallo Zusammen, ich grüße euch, mein Name ist Michele. Ich bin hier ganz Neu - da ich einfach nicht ...

Windows Server
2003er RDS Server lässt alten ThinClient nach Updates nicht mehr anmelden
Frage von KnorkatorWindows Server9 Kommentare

Hallo zusammen, wir hatten die Aufgabe, ein System (keine Domänenanbindung) zu virtualisieren welches mehrere Jahre keine Updates gesehen hat. ...

VB for Applications
Per Button klick Wert in Zelle eintragen, erneutes klicken Wert wieder entfernen
gelöst Frage von HainoonVB for Applications8 Kommentare

Hallo zusammen, Ich Frage mich, ob es möglich ist mit dem selben Button einen Wert in eine Zelle einzutragen ...

Router & Routing
Openvpn routing für Smart Tv auf raspberry realisieren
Frage von kleinerrieseRouter & Routing7 Kommentare

Guten Abend, ich bin oft bei meiner Frau in Italien und möchte auch dort die Mediathek von ZDF gucken. ...