(Lister-)Plugin zum Anzeigen von ANSI in Binärdateien
Moderators: Hacker, Stefan2, white
(Lister-)Plugin zum Anzeigen von ANSI in Binärdateien
Hallo Leute,
ich hoffe, der Titel ist einigermaßen verständlich. Ich suche ein Plugin für den TC, das mir die lesbaren Texte aus Binärdateien anzeigen und filtern kann.
Beispiel: ich schaue mit dem Lister ein ZIP an und das Plugin sorgt dafür, dass der unlesbare Kram verschwindet und nur noch die ANSI/ASCII-Anteile übrigbleiben, in dem Fall die Namen der gepackten Dateien.
Der ProcessExplorer hat eine ähnliche Funktion. Dort kann man in den Eigenschaften eines Prozesses zum Register "Strings" wechseln und sieht dort, welche lesbaren Zeichen dieser Prozess enthält.
MfG Dalai
ich hoffe, der Titel ist einigermaßen verständlich. Ich suche ein Plugin für den TC, das mir die lesbaren Texte aus Binärdateien anzeigen und filtern kann.
Beispiel: ich schaue mit dem Lister ein ZIP an und das Plugin sorgt dafür, dass der unlesbare Kram verschwindet und nur noch die ANSI/ASCII-Anteile übrigbleiben, in dem Fall die Namen der gepackten Dateien.
Der ProcessExplorer hat eine ähnliche Funktion. Dort kann man in den Eigenschaften eines Prozesses zum Register "Strings" wechseln und sieht dort, welche lesbaren Zeichen dieser Prozess enthält.
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
Hallo, Dalai.
Plugin ist dies keins, aber vielleicht gefällt dir ja auch die Kombination aus Windows Eingabeaufforderung (cmd.exe) und Mark Russinovich'ens strings, welches wiederum nur eine Nachbildung des Unix/Linux Kommandos strings ist.
Grüße,
Karl
Plugin ist dies keins, aber vielleicht gefällt dir ja auch die Kombination aus Windows Eingabeaufforderung (cmd.exe) und Mark Russinovich'ens strings, welches wiederum nur eine Nachbildung des Unix/Linux Kommandos strings ist.
Grüße,
Karl
Ist zwar nicht so richtig das, was ich suche, aber schonmal besser als nichts. Mit einem schnell hingeschmierten (aber dennoch brauchbaren) Skript ausgestattet
und das im Startermenü mit Parametern %P%N hinterlegt, kann man zumindest so tun, als benutzte man den normalen Lister
. Nur am englischen Menü desselben sieht man, dass es der Standalone-Lister ist. Ich weiß, dass es /S=L gibt, aber ich möchte das vermeiden.
Wenn jemand noch eine Lösung via Plugin kennt: immer her damit. Bis hierher aber erstmal danke an Karlchen!
MfG Dalai
Code: Select all
@echo off
if "%~1"=="" goto :EOF
REM -----------------------------------------------
set strings=E:\Programme\strings\strings.exe
set lister=%COMMANDER_PATH%\Plugins\Lister\lister.exe
set outfile=%temp%\strings.txt
REM -----------------------------------------------
echo Verarbeite %1 ...
"%strings%" -n 5 -q "%~1" > "%outfile%"
start /wait "list" "%lister%" "%outfile%" /i="%COMMANDER_INI%" /T1
del /F /Q "%outfile%"

Wenn jemand noch eine Lösung via Plugin kennt: immer her damit. Bis hierher aber erstmal danke an Karlchen!
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
Frage:
Ich habe keine Lister.exe - das ist doch der integrierte Befehl, nicht wahr?
Ich habe mir den "lister" auf Ultraedit.exe umgebaut - funktioniert an sich auch, aber es geht auch gleichzeitig die leere Datei "1" auf ...
meine strings.bat:
Mein Button:
Wer kann helfen?
Peter
Code: Select all
set lister=%COMMANDER_PATH%\Plugins\Lister\lister.exe
Ich habe mir den "lister" auf Ultraedit.exe umgebaut - funktioniert an sich auch, aber es geht auch gleichzeitig die leere Datei "1" auf ...
meine strings.bat:
Code: Select all
@echo off
rem (Lister-)Plugin zum Anzeigen von ANSI in Binärdateien
rem http://ghisler.ch/board/viewtopic.php?p=217395#217395
rem ich hoffe, der Titel ist einigermaßen verständlich. Ich suche ein Plugin für den TC,
rem das mir die lesbaren Texte aus Binärdateien anzeigen und filtern kann.
rem Beispiel: ich schaue mit dem Lister ein ZIP an und das Plugin sorgt dafür,
rem dass der unlesbare Kram verschwindet und nur noch die ANSI/ASCII-Anteile übrigbleiben,
rem in dem Fall die Namen der gepackten Dateien.
rem Der ProcessExplorer hat eine ähnliche Funktion. Dort kann man in den Eigenschaften eines
rem Prozesses zum Register "Strings" wechseln und sieht dort, welche lesbaren Zeichen dieser Prozess enthält.
if "%~1"=="" goto :EOF
REM -----------------------------------------------
set strings=%COMMANDER_PATH%\Sonderprogramme\Strings\Strings.exe
set lister=d:\Software\UltraEdit_14\Uedit32.exe
set outfile=%temp%\strings.txt
REM -----------------------------------------------
echo Verarbeite %1 ...
"%strings%" -n 5 -q "%~1" > "%outfile%"
start /wait "list" "%lister%" "%outfile%" /i="%COMMANDER_INI%" /T1
del /F /Q "%outfile%"
Code: Select all
TOTALCMD#BAR#DATA
D:\Program Files\totalcmd\Sonderprogramme\Strings\strings.bat
%P%N
D:\Program Files\totalcmd\TOTALCMD.EXE,31
Zeigt aus Binärdaten nur die ASCII-Strings
D:\Program Files\totalcmd\Sonderprogramme\Strings\
-1
Peter
TC 10.xx / #266191
Win 10 x64
Win 10 x64
Nein.keine Lister.exe - das ist doch der integrierte Befehl, nicht wahr?
Vorletzte Zeile aendern inWer kann helfen?
Code: Select all
start /wait "list" "%lister%" "%outfile%"
"War is evil, in so far as it makes more bad people than it takes away."
Immanuel Kant in "Perpetual Peace"
Immanuel Kant in "Perpetual Peace"
Nö. Schau mal hier; da gibt's den Standalone-Lister zum Download, denn wie ich oben auch schon schrieb, vermeide ich, solche Funktionen des TC zu nutzen.Peter wrote:Frage:Ich habe keine Lister.exe - das ist doch der integrierte Befehl, nicht wahr?Code: Select all
set lister=%COMMANDER_PATH%\Plugins\Lister\lister.exe
Dann musst du dem Editor beibringen, keine leere Datei zu öffnen. Wenn ich statt des Listers bei mir ConTEXT nutze, geht jedenfalls nur die gewünschte Datei auf. Die Parameter, die ich im Skript für %lister% verwende, sind natürlich auf diesen zugeschnitten. Du solltest die alle weglassen, bis auf %outfile% logischerweise.Ich habe mir den "lister" auf Ultraedit.exe umgebaut - funktioniert an sich auch, aber es geht auch gleichzeitig die leere Datei "1" auf ...
Ergänzung: Man kann das Skript auch etwas anpassen, so dass die Parameter oben mit gesetzt werden:
Code: Select all
@echo off
if "%~1"=="" goto :EOF
REM -----------------------------------------------
set strings=E:\Programme\strings\strings.exe
set lister=%COMMANDER_PATH%\Plugins\Lister\lister.exe
set params=/i="%COMMANDER_INI%" /T1
set outfile=%temp%\strings.txt
REM -----------------------------------------------
echo Verarbeite %1 ...
title Verarbeite %1 ...
"%strings%" -n 5 -q "%~1" > "%outfile%"
start /wait "list" "%lister%" "%outfile%" %params%
del /F /Q "%outfile%"


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
Vorletzte Zeile aendern inWer kann helfen?
Code: Select all
start /wait "list" "%lister%" "%outfile%"
Danke. Klappt.
Dürfte dem obigen Code entsprechen. Danke.Dalai wrote:...Dann musst du dem Editor beibringen, keine leere Datei zu öffnen. Wenn ich statt des Listers bei mir ConTEXT nutze, geht jedenfalls nur die gewünschte Datei auf. Die Parameter, die ich im Skript für %lister% verwende, sind natürlich auf diesen zugeschnitten. Du solltest die alle weglassen, bis auf %outfile% logischerweise.
Hier meine kleine Ergänzung, die
- als Kopfzeile zwei Infozeilen inj die Datei schreibt
- den Originaldateinamen als Ausgabedatei verwendet.
(zur Verknüpfung "orignalname-erweiterung_strings.txt" bin ich zu dämlich.
Code: Select all
@echo off
rem (Lister-)Plugin zum Anzeigen von ANSI in Binärdateien
rem http://ghisler.ch/board/viewtopic.php?p=217395#217395
rem ich hoffe, der Titel ist einigermaßen verständlich. Ich suche ein Plugin für den TC,
rem das mir die lesbaren Texte aus Binärdateien anzeigen und filtern kann.
rem Beispiel: ich schaue mit dem Lister ein ZIP an und das Plugin sorgt dafür,
rem dass der unlesbare Kram verschwindet und nur noch die ANSI/ASCII-Anteile übrigbleiben,
rem in dem Fall die Namen der gepackten Dateien.
rem Der ProcessExplorer hat eine ähnliche Funktion. Dort kann man in den Eigenschaften eines
rem Prozesses zum Register "Strings" wechseln und sieht dort, welche lesbaren Zeichen dieser Prozess enthält.
if "%~1"=="" goto :EOF
REM -----------------------------------------------
set strings=%COMMANDER_PATH%\Sonderprogramme\Strings\Strings.exe
set lister=d:\Software\UltraEdit_14\Uedit32.exe
set outfile=%temp%\%~n1
REM -----------------------------------------------
echo Verarbeite %1 ...
echo "%~1" > "%outfile%"
echo "-------------------------------" >> "%outfile%"
"%strings%" -n 5 -q "%~1" >> "%outfile%"
rem start /wait "list" "%lister%" "%outfile%" /i="%COMMANDER_INI%" /T1
start /wait "list" "%lister%" "%outfile%"
del /F /Q "%outfile%"
TC 10.xx / #266191
Win 10 x64
Win 10 x64
Gute Idee.Peter wrote:Hier meine kleine Ergänzung, die
- als Kopfzeile zwei Infozeilen inj die Datei schreibt
Ebenfalls nett. Darauf wäre ich nicht gekommen.- den Originaldateinamen als Ausgabedatei verwendet.
Geht ganz einfach:(zur Verknüpfung "orignalname-erweiterung_strings.txt" bin ich zu dämlich.
Code: Select all
%~n1-%~x1_strings.txt
# oder
%~nx1_strings.txt
Komplett, wieder etwas verfeinert, kann das dann so aussehen:
Code: Select all
@echo off
if "%~1"=="" goto :EOF
REM -----------------------------------------------
set strings=E:\Programme\strings\strings.exe
set lister=%COMMANDER_PATH%\Plugins\Lister\lister.exe
set params=/i="%COMMANDER_INI%" /T1
set outfile=%temp%\%~nx1_strings.txt
REM -----------------------------------------------
echo Verarbeite %1 ...
title Verarbeite %1 ...
(
echo %1
echo --------------------------------------------------------------------------------
"%strings%" -n 5 -q "%~1"
)> "%outfile%"
start /wait "list" "%lister%" "%outfile%" %params%
del /F /Q "%outfile%"
#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
Geht auch prima mit MultiLister, dann allerdings abhängig von der Dateierweiterung. Hier die Ergänzung von listfilter.ini
Code: Select all
[DLL|EXE]
Resolution=100
Fitpage=0
Format_TXT=%tcc%Tools\Strings\strings.exe -n 5 -q %fn%%stdout%%hide% Zeigt aus Binärdaten nur die ASCII-Strings
TC plugins: Autodesk 3ds Max / Inventor / Revit Preview, FileInDir, ImageMetaData (JPG Comment/EXIF/IPTC/XMP), MATLAB MAT-file Viewer, Mover, SetFolderDate, Solid Edge Preview, Zip2Zero and more
Das scheint mir brauchbar, abertbeu wrote:Geht auch prima mit MultiLister
das macht's dann wieder unbenutzbar für mich. Es gibt einfach zu viele Dateitypen, die binären Inhalts sein können... Und pauschal alle Dateitypen per * zu definieren, wäre - sofern es geht - auch doof, denn ich brauche die Geschichte nur manchmal.dann allerdings abhängig von der Dateierweiterung.
Am liebsten wäre mir ein Lister-Plugin, das alle nicht mit anderen Lister-Plugins verknüpften Dateitypen anzeigt. Aber u.U. ist dafür sogar die Definitionsfähigkeit des TC unzureichend (weiß ich nicht genau).
Schwierige Sache, aber im Moment kann ich mit der Skriptlösung oben arbeiten

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