geben Sie die Sortierreihenfolge in "copy /b *.dat foo" in Windows cmd ein
Normalerweise, wenn ich ein copy /b *.data foo
in Windows cmd mache, werden die *.data
Dateien in der sortierten Reihenfolge in die Zieldatei foo
kateniert. Dies entspricht meinem gewünschten Verhalten.
Ich habe jedoch gerade ein merkwürdiges Verzeichnis getroffen, in das dieser Befehl copy /b
die Dateien nicht in der richtigen Reihenfolge kopiert. Die Reihenfolge ist nicht gerade zufällig, aber die vorletzte Datei in der sortierten Reihenfolge wird zuerst angezeigt, gefolgt von den verbleibenden Dateien in sortierter Reihenfolge.
Gibt es eine Möglichkeit, diese seltsame Sortierung zu überwinden verhalten? Was ist im Allgemeinen, wenn ich die Dateien beispielsweise in umgekehrter Reihenfolge kopieren möchte?
1 answers
Dadurch werden die Dateien (sogar die mit Leerzeichen) in umgekehrter Reihenfolge verkettet:
C:\> for /f "tokens=*" %i in ('dir /a-d /o-n /b c:\some_dir\*') do @type %i >> c:\another_dir\dest.dat
Wenn es nur wenige Dateien gibt, können Sie diese explizit auflisten:
C:\> copy /b c.dat+a.dat+b.dat dest.dat
So etwas könnte in einigen Situationen funktionieren:
C:\> copy /b file*.dat+foo.dat+bar*.dat dest.dat
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/techietown.info/template/agent.layouts/content.php on line 61
2017-05-23 11:33:49