Ich habe eine Binärdatei mit einigen Dateipfaden. Wenn der Pfad mit einer bestimmten Zeichenfolge beginnt, sollte der Rest des Dateipfads [\x20-\x7f]+
maskiert werden, damit die allgemeine Struktur und Größe der Datei erhalten bleibt!Bestimmte Dateipfade in Binärdateien maskieren
So mit einer Liste von Pfaden hierfür ist, zu suchen:
/usr/local/bin/
/home/joe/
Dann wird ein Auftreten wie dies in den binären Daten:
^@^@^@^@/home/joe/********************^@^@^@^@
:
^@^@^@^@/home/joe/documents/hello.docx^@^@^@^@
Sollte auf diese geändert wird
Was ist der beste Weg, dies zu tun? Haben sed, perl oder awk einen Weg? Oder muss ich ein C- oder PHP-Programm schreiben, wo ich die Zeichenfolge finde und strlen()
Anzahl der Maskenzeichen an ihrer Stelle schreiben?
Diese Lösung funktionierte direkt aus der Box! Ideal für die Anonymisierung persönlicher Daten in Protokolldateien. (Es gibt eine fehlende '/' hinter 'bin', aber das sind Details!) – forthrin
@forthrin. Danke, ich habe jetzt den Trailing '/' aus der Alternation verschoben, so dass er auf beide Pfade zutrifft. –