Umgekehrte Bytes einer Datei

1442
puggsoy

Gibt es ein Programm oder einen CMD-Befehl, mit dem ich einfach alle Bytes einer Datei umkehren oder spiegeln kann? Wenn ich zum Beispiel eine Textdatei (als einfaches Beispiel) mit der Aufschrift "Hallo, Welt!" Habe, würde das Programm / der Befehl sie umdrehen und "! Dlrow, olleH" sagen.

Ja, gibt es eine Möglichkeit, dies zu tun? Ich bin Programmierer und weiß, dass es trivial wäre, dafür mein eigenes Programm zu schreiben, aber ich würde lieber nicht die Mühe machen, wenn es schon etwas gibt, das es kann. Ein Batch-Skript wäre auch in Ordnung.

2
Ich würde sagen, gehen Sie die Mühe durch. Anscheinend ist es trivial und Sie können dann Ihre wenigen Momentarbeit mit Ihnen teilen. Grüße, Xavierjazz vor 9 Jahren 2
Natürlich, wenn es dafür noch nichts gibt, macht es mir nichts aus, selbst ein Programm zu schreiben (und ich bin mir sicher, dass andere es auch nützlich finden werden). Wenn es jedoch schon etwas dafür gibt, dann macht es keinen Sinn, das Rad neu zu erfinden. puggsoy vor 9 Jahren 0
xxd geht einen Teil des Weges dorthin. xxd -p IhrDatei gibt das Hex ab. Sie können xxd mit vim7.x erhalten. Aber dann, was Sie eingeben müssen, um es nach Belieben umzukehren, bin ich nicht sicher. Ich vermute, ein Perl-One-Liner, obwohl ich Perl noch nicht wirklich kenne. barlop vor 9 Jahren 0

1 Antwort auf die Frage

6
STTR
powershell $s='Hello, world!';$s[-1..-($s.length)]-join'' 

Datei:

Weg 1:

powershell $f=[IO.File]::ReadAllBytes('.\file.txt');$t=[Text.Encoding]::ASCII.GetString($f);$t[-1..-($t.length)]-join'' 

Weg 2:

powershell [void][Reflection.Assembly]::LoadWithPartialName('Microsoft.VisualBasic');$s=gc .\file.txt;[Microsoft.VisualBasic.Strings]::StrReverse($s) 

Byte umgekehrt:

schleppend:

powershell [byte[]]$b=gc '.\file.bin' -En byte;[array]::Reverse($b);[IO.File]::WriteAllBytes('.\Reverse.bin',$b) 

schnell:

powershell [byte[]]$b=[IO.File]::ReadAllBytes('.\file.bin');[array]::Reverse($b);[IO.File]::WriteAllBytes('.\Reverse.bin',$b) 
Wie würde ich eine Datei angeben? Ich möchte die Zeichen nicht in mich selbst schreiben müssen, und in den meisten Fällen kann ich nicht (da es sich um die Bytes handelt, die ich umkehren möchte, nicht nur um Text). puggsoy vor 9 Jahren 0
Ah das funktioniert super, danke! Ich denke, dass ich vielleicht selbst ein Programm dafür machen könnte, da dies komplexer als notwendig erscheint. Trotzdem vielen Dank für Ihre Antwort, es funktioniert und hat meine Frage beantwortet! puggsoy vor 9 Jahren 0
Warten Sie eigentlich nicht, es funktioniert nicht richtig. Es funktioniert mit Strings, aber für meine Verwendung möchte ich, dass es alle * Bytes * in einer Datei umkehrt, nicht nur Textzeichen. puggsoy vor 9 Jahren 0
@puggsoy Update 2 STTR vor 9 Jahren 0
Toll, das funktioniert. Ich habe trotzdem mein eigenes Programm gemacht, aber es beantwortet meine Frage und ist hilfreich :) puggsoy vor 9 Jahren 1