Hallo zusammen,
ich suche schon länger eine Möglichkeit, Dateien aus einem Quellverzeichnis zu "kopieren", die Kopien werden aber im Zielverzeichnis als 0-Byte Dateien angelegt. Hiebei ist es wichtig, das diese 0-Byte Dateien aber den gleichen Timestamp haben wie die Quelldateien.
Hintergrund:
Ich erstelle sehr oft Verzeichnisse (CD001, CD002, ...) in denen ich Dateien sammle. Wenn das Verzeichnis ca. 700 MB hat, brenne ich diese auf CD und würde dann aus diesen Dateien von der Festplatte 0-Byte erstellen wollen. So kann ich das Verzeichnis mit den 0-Byte Dateien auf der Festplatte belassen und habe eine schnelle Möglichkeit, lokal in den Verzeichnisse zu suchen, auf welcher CD sich welche Datei befindet. Da es namensgleiche Dateien mehrfach geben kann, aber in verschiedenen Verionsständen, ist es wichtig das die 0-Byte Dateien das gleiche Datum wie die Dateien auf der CD haben.
Da ich (fast) alles mit dem Totalcommander mache, wäre es natürlich Klasse, wenn ich sowas auch direkt mit dem Totalcommander ausführen könnte.
Hat jemand eine Idee wie sich sowas umsetzen läßt?
mit freundlichen Grüßen
logi
0-byte Dateien zur Archivierung erzeugen
Moderators: white, Hacker, Stefan2
- sqa_wizard
- Power Member
- Posts: 3864
- Joined: 2003-02-06, 11:41 UTC
- Location: Germany
Mit 0-Byte Dateien ? Nein.Hat jemand eine Idee wie sich sowas umsetzen läßt?
Aber warum so umständlich ?
Versuch es mit dem DiskDir Plugin
Damit erstellst du eine Liste der Dateien (incl. Grösse und Datum) die du mit dem TC wie eine Dateistruktur ansehen, sortieren und sogar im Verzeichnis-Synchronisier-Tool mit realen Verzeichnissen vergleichen kannst.
(Natürlich nicht nach Inhalt aber ansonsten wohl)
#5767 Personal license
@sqa_wizard
Danke für den Tip mit dem DiskDir Plugin. Hilft mir aber leider nur bedingt.
Ich hatte aber in meinem Eingangsposting noch nicht alle Anwendungsfälle für 0-Byte Dateien aufgezählt.
Ich verwende 0-Byte Dateien auch für den Abgleich mit einem FTP Server. Ich verwende für den FTP-Download FileZilla mit der Option, das lokal bereits vorhandene Dateien nur überschrieben werden, wenn die auf dem FTP Server neuer sind. Die Dateien werden nach dem Download dann auf CD/DVD archiviert und durch 0-Byte Dateien mit dem gleichen Datum der "richtigen" Dateien ersetzt. FileZilla wird dann also die Datei solange nicht mehr runterladen, wie die Daten auf dem FTP Server nicht neuer sind.
Danke für den Tip mit dem DiskDir Plugin. Hilft mir aber leider nur bedingt.
Ich hatte aber in meinem Eingangsposting noch nicht alle Anwendungsfälle für 0-Byte Dateien aufgezählt.
Ich verwende 0-Byte Dateien auch für den Abgleich mit einem FTP Server. Ich verwende für den FTP-Download FileZilla mit der Option, das lokal bereits vorhandene Dateien nur überschrieben werden, wenn die auf dem FTP Server neuer sind. Die Dateien werden nach dem Download dann auf CD/DVD archiviert und durch 0-Byte Dateien mit dem gleichen Datum der "richtigen" Dateien ersetzt. FileZilla wird dann also die Datei solange nicht mehr runterladen, wie die Daten auf dem FTP Server nicht neuer sind.
Solche Dateien mit 0 Byte Größe lassen sich mit diesem Befehl erzeugen
Problem dabei: als Datum wird natürlich das aktuelle benutzt und ich weiß bisher noch keine Lösung, wie man das Datum der Quelldatei auf die 0-Byte-Datei anwenden könnte. Geht das evtl mit dem Linux-Tool touch?
Das ist vielleicht eine Möglichkeit, auf der man aufbauen kann.
MfG Dalai
Code: Select all
copy nul <zieldatei>
Das ist vielleicht eine Möglichkeit, auf der man aufbauen kann.
MfG Dalai
#101164 Personal licence
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64
Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
Ryzen 5 2600, 16 GiB RAM, ASUS Prime X370-A, Win7 x64
Plugins: Services2, Startups, CertificateInfo, SignatureInfo, LineBreakInfo - Download-Mirror
logi,
Hier ist ein kurzes AutoHotkey Skript als Losung:
Aufrufen kann man es aus der Button Bar oder dem Menu, die Parameter mussen dann so aussehen:
HTH
Roman
Hier ist ein kurzes AutoHotkey Skript als Losung:
Code: Select all
SetWorkingDir, %1%
Loop, *.*, 2, 1
{
FileCreateDir, %2%%A_LoopFileFullPath%
IfNotEqual, ErrorLevel, 0
MsgBox, Error creating dir "%2%%A_LoopFileFullPath%".
}
Loop, *.*, 0, 1
{
FileAppend, , %2%%A_LoopFileFullPath%
IfNotEqual, ErrorLevel, 0
MsgBox, Error creating file "%2%%A_LoopFileFullPath%".
FileGetTime, Time
FileSetTime, %Time%, %2%%A_LoopFileFullPath%
IfNotEqual, ErrorLevel, 0
MsgBox, Error setting the modified timestamp on "%2%%A_LoopFileFullPath%".
FileGetTime, Time, , C
FileSetTime, %Time%, %2%%A_LoopFileFullPath%, C
IfNotEqual, ErrorLevel, 0
MsgBox, Error setting the created timestamp on "%2%%A_LoopFileFullPath%".
FileGetTime, Time, , A
FileSetTime, %Time%, %2%%A_LoopFileFullPath%, A
IfNotEqual, ErrorLevel, 0
MsgBox, Error setting the accessed timestamp on "%2%%A_LoopFileFullPath%".
}
Aufrufen kann man es aus der Button Bar oder dem Menu, die Parameter mussen dann so aussehen:
Code: Select all
"%P\" "%T\"
Roman
Mal angenommen, du drückst Strg+F, wählst die FTP-Verbindung (mit gespeichertem Passwort), klickst aber nicht auf Verbinden, sondern fällst tot um.