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

Abfrage ob Dateien in einem Ordner sind

Frage Entwicklung Batch & Shell

Mitglied: pbelcl

pbelcl (Level 1) - Jetzt verbinden

28.12.2011 um 16:21 Uhr, 3115 Aufrufe, 6 Kommentare

Dateien mooven aber nur wenn welche da sind

Ich habe eine Downloadplatte wo Videos via FTP-Push vom Onlinetvrecorder runtergeladen werden.
Da die Platte recht klein ist muss ich jeden Tag prüfen ob dort Files sind und diese woanders hinverschieben.

Nun habe ich dazu einige Fragen:

1.) Kann ich per Batch prüfen ob in diesem Ordner überhaupt Dateien sind und diesen "Verschieben Job" nur dann anstossen?

2.) wie kann ich sicherstellen, dass eine Datei erst dann bewegt wird wenn sie Vollständig da ist?
Wenn die Datei gerade runtergeladen wird, kann es bis zu einer Stunde dauern bis sie komplett da ist, in dieser Zeit darf sie natürlich nicht verschoben werden

Habt ihr vielleicht Tipps für mich, wie ich das lösen kann?
Mitglied: bastla
28.12.2011 um 21:24 Uhr
Hallo pbelcl! (Ich schreibe und lese gerne eine Begrüßung.)

Die Frage 1 möchte ich mit einer Gegenfrage beantworten: Was passiert denn, wenn Du nicht vorhandene Dateien verschiebst? Die folgende "for"-Schleife zeigt, dass das Problem keines ist:
for %%i in ("%Quelle%\*.*") do echo move "%%i" "%Ziel%\"
Noch einfacher:
move "%Quelle%\*.*" "%Ziel%\" 2>nul
macht auch den Job (und keinen Mux, falls es mal keine Dateien gibt) ...

Grüße (ja, mag ich auch)
bastla
Bitte warten ..
Mitglied: pbelcl
29.12.2011 um 19:10 Uhr
Hallo bastla,
Zitat von bastla:
Die Frage 1 möchte ich mit einer Gegenfrage beantworten: Was passiert denn, wenn Du nicht vorhandene Dateien verschiebst?

Nun ja ich habe mir einen universellen Copyjob gebastelt der mit Parametern gefüttert wird.
Dieser schreibt ausführliche LOG Dateien.

Das heißt ich muss ihn in diesem Fall nur starten wenn auch Dateien da sind, sonst gibt es unnötige Einträge im LOG ...

Mit :

01.
  
02.
if exist *.* 
komme ich nicht weiter!

zum zweiten darfich das File erst kopieren wenn es nicht mehr größer wird, sonst ziehe ich es dem FTP vielleicht während dem Upload unterm Hintern weg.

Deshalb muss ich genau ZWEI dinge in diesem Ordner prüfen:

1.) Sind files da

2.) Sind sie älter wie 2 Stunden
oder werden sie nicht mehr größer

Gibts da irgend eine Möglichkeit?
Bitte warten ..
Mitglied: bastla
29.12.2011 um 20:48 Uhr
Hallo pbelcl!

Dann etwa so:
01.
@echo off & setlocal 
02.
set "Ordner=D:\Videodownload" 
03.
 
04.
for /f "tokens=1,3" %%i in ('dir "%Ordner%" 2^>nul^|findstr /c:"Datei(en)"') do set "Anz=%%i" & set "BytesAlt=%%j" 
05.
if "%Anz%"=="0" echo Keine Dateien gefunden! & goto :eof 
06.
 
07.
ping -n 15 127.0.0.1 >nul 
08.
 
09.
for /f "tokens=3" %%i in ('dir "%Ordner%"^|findstr /c:"Datei(en)"') do set "BytesNeu=%%i" 
10.
if "%BytesAlt%" neq "%BytesNeu%" echo Dateien unterschiedlich gross! & goto :eof 
11.
 
12.
echo %Anz% Datei(en) mit %BytesNeu% Bytes vorhanden
Die Wartezeit von etwa 15 Sekunden für den Größenvergleich in Zeile 7 kannst Du natürlich noch anpassen ...

Grüße
bastla
Bitte warten ..
Mitglied: pbelcl
30.12.2011 um 07:58 Uhr
Hi bastla,

Du bist wirklich Super!!!!

Ich habe mir ein paar Codeschnipsel zum probieren erwartet, aber die Codezeilen oben sind ja schon die Lösung!!
Und nicht nur das, sie funktionieren auch, habe gerade sie eingebaut...
Speziell die Prüfung der Größe. Auf das wär ich niemals von selbst draufgekommen obwohl es jetzt nachdem ich es sehe eh ganz logisch ist...

Vielen lieben Dank, das hat mir nicht nur sehr geholfen sondern auch viel rumprobieren erspart

Guten Rutsch und alles Liebe
Paul
Bitte warten ..
Mitglied: bastla
30.12.2011 um 12:57 Uhr
Hallo pbelcl!

Freut mich, wenn's hilft, obwohl:
viel rumprobieren erspart
... ist vielleicht auch ein wenig schade - (eigentlich nur) dadurch lernst Du nämlich das "Batchen" wirklich ...

Auch Dir die besten Wünsche
bastla
Bitte warten ..
Mitglied: pbelcl
30.12.2011 um 13:07 Uhr
Zitat von bastla:
... ist vielleicht auch ein wenig schade - (eigentlich nur) dadurch lernst Du nämlich das "Batchen" wirklich ...

Stimmt grundsätzlich, aber auf deiner Ebene probier ich sowieso nix, da ist die Einstiegshürde zu hoch
Leider sind diese Dinge nicht gut genug dokumentiert um durch lesen drauf zu kommen.

Aber durch deine Hilfe inspirierst du mich oft, mir anhand deiner "muster" ähnliche Sachen anzusehen, die ich dann umsetze.
Erst heute hab ich wieder eines deiner Codeschnipsel woanders eingebaut und es dort in etwas geänderter Form ausprobiert!

Ist also noch genug Lernpotential da, keine Sorge...

Danke nochmal!

PS: Kann die ja mal ein paar der fertigen batches schicken, wenn es dich interessiert.
Ich glaube allerdings dass die bei einigen davon die Tränen kommen werden
Funktionieren tun sie trotzdem, meistens jedenfalls ....
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
Batch & Shell
gelöst Per Batch Dateien in einen Ordner - ext. Festplatte übertragen (2)

Frage von tocksick zum Thema Batch & Shell ...

Windows Server
gelöst Freigegebener Ordner "Eigene Dateien" (8)

Frage von JensDND zum Thema Windows Server ...

Windows 10
Löschen von Ordner mit Dateien (3)

Frage von jerry32 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...