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

Neue und veränderte Dateien ausgeben über eine Batch Datei

Frage Entwicklung Batch & Shell

Mitglied: Haiopai

Haiopai (Level 1) - Jetzt verbinden

23.01.2009, aktualisiert 09:44 Uhr, 7006 Aufrufe, 7 Kommentare

Hallo zusammen


Ich stehe hier vor folgendem kleinen Problem:
Ich muss auf einer HDD (z.B. Laufwerk d:\ )alle verändertern und neuen Dateien in einer Log-Datei erfassen. (Soll über eine Batch Datei erfolgen)
Da ich mich nur begrenzt im scripting auskenne, gestaltet sich dieses als schwierig.

Könnte mir da mal jemand auf die Sprünge helfen `?

Danke schon mal vorab.

Gruss Marc
Mitglied: NetWolf
23.01.2009 um 10:25 Uhr
Hallo Marc,

keine Ahnung wie begrenzt deine BATCH-Kenntnisse sind, aber hier steht eigentlich alles was du benötigst drin:

http://www.i8086.de/dos-befehle/dir.html

Nutze einfach die Parameter des DIR -Befehls, so wie du sie benötigst.

Grüße aus Schönberg (Lübeck)
Wolfgang
(Netwolf)
Bitte warten ..
Mitglied: Haiopai
23.01.2009 um 11:55 Uhr
Hallo Wolfgang

In Bezug auf den dir befehl habe ich doch maximal die Möglichkeit dir /TW anzugeben und damit bekomme ich das Datum der letzten änderung, oder ich kann sortieren, damit komme ich meiner Lösung aber nicht nahe.
Ich brauche im Log nur die Dateien die sich verändert haben und die neuen. Mit fc finde ich aber auch keinen parameter der dieses bewerkstelligt.

Grüsse Marc
Bitte warten ..
Mitglied: bastla
23.01.2009 um 12:32 Uhr
Hallo Haiopai und willkommen im Forum!

Du könntest den "xcopy"-Befehl dafür "missbrauchen":
xcopy /Y /S /D:M-T-J /L /I Quelle (imaginäres)Ziel>>Logdatei
wobei mit "M-T-J" die Angabe des Datums, ab welchem Dateien als "neu" gelten, erfolgt. Da nicht wirklich kopiert wird, ist das angegebene Ziel eigentlich egal.

Grüße
bastla
Bitte warten ..
Mitglied: Haiopai
23.01.2009 um 12:39 Uhr
Hallo Bastla

Vielen dank schon mal für den Tip
Hierbei müsste man aber täglich den Wert des Datums ändern.
Gibt es hier evtl ein Möglichkeit das anzupassen ?
Die Routine soll jeden Tag angestossen werden (Batchdatei) um die aktuelle Differenz ( geänderte Dateien/ und neu Dateien) zum Vortag Vortag in einen Textdokument bzw. Logdatei anzuzeigen.

Gruss Marc
Bitte warten ..
Mitglied: NetWolf
23.01.2009 um 13:35 Uhr
Hallo Marc,

ich dachte eher an das "Archiv" Attribut.
Nachts das Attribut aller Dateien zurücksetzen!

Vorher die Liste erstellen, da idR. das Attribut gesetzt wird, wenn eine neue oder geänderte Datei da ist.


Grüße aus Schönberg (Lübeck)
Wolfgang
(Netwolf)
Bitte warten ..
Mitglied: Haiopai
23.01.2009 um 15:54 Uhr
Hallo zusammen

Habe dann den Befehl von dir (Bastla) verwendet und noch um 2 variablen erweitert, damit ich ohne anhängen schreiben kann.

Thx a lot

Gruss Marc
Bitte warten ..
Mitglied: bastla
23.01.2009 um 16:10 Uhr
Hallo Haiopai!

Für eine variable Datumsangabe (Stichwort "gestern") könntest Du noch folgenden Batchteil einbauen:
01.
@echo off & setlocal 
02.
set TDiff=-1 
03.
set gTemp=%Temp%\Gestern.vbs 
04.
>%gTemp% echo g=DateAdd("d",%TDiff%,Date):WScript.Echo Mid(g,4,2)^&"-"^&Left(g,2)^&"-"^&Right(g,4) 
05.
for /f %%i in ('cscript //nologo %gTemp%') do set "G=%%i" 
06.
echo %G%
Durch Änderung der Wertzuweisung zu %TDiff% in Zeile 2 kannst Du auch andere Zeitdifferenzen (in Tagen) vorgeben.

Grüße
bastla
Bitte warten ..
Neuester Wissensbeitrag
Off Topic

"Ich habe nichts zu verbergen"

(2)

Erfahrungsbericht von FA-jka zum Thema Off Topic ...

Ähnliche Inhalte
Batch & Shell
Maximale Größe zu verarbeitender txt-Dateien mit Batch (5)

Frage von Muck1303 zum Thema Batch & Shell ...

Batch & Shell
gelöst Verlinkung erstellen Batch Datei mit for Schleife (2)

Frage von rusdav zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Linux Netzwerk
gelöst DHCP vergibt keine Adressen (32)

Frage von Maik82 zum Thema Linux Netzwerk ...

Apache Server
gelöst Lets Encrypt SSL mit Apache2 (20)

Frage von banane31 zum Thema Apache Server ...

CPU, RAM, Mainboards
Kaufberatung für mind. 8 verschiedene HighEnd-Mainboards (20)

Frage von yperiu zum Thema CPU, RAM, Mainboards ...

Mac OS X
Mac kann nicht im LAN pingen alle anderen schon (14)

Frage von smartino zum Thema Mac OS X ...