Je cherche un outil (ou les paramètres appropriés à passer à un outil
standard) qui puisse me donner la position de toutes les occurrences
d'une chaîne dans un fichier (le fichier fait 50 Go en fait un "dump"
d'un disque crashé obtenu avec dd).
J'ai essayé "grep -b" mais il n'aime pas trop les parties binaires. Mon
autre option est de passer par "hexdump -C" d'abord, mais comme là ma
chaîne risque d'être à cheval sur deux lignes...
Une idée ?
Merci,
Patrick
--
Patrick Stadelmann <Patrick.Stadelmann@unine.ch>
Je cherche un outil (ou les paramètres appropriés à passer à un outil standard) qui puisse me donner la position de toutes les occurrences d'une chaîne dans un fichier (le fichier fait 50 Go en fait un "dump" d'un disque crashé obtenu avec dd).
J'ai essayé "grep -b" mais il n'aime pas trop les parties binaires. Mon autre option est de passer par "hexdump -C" d'abord, mais comme là ma chaîne risque d'être à cheval sur deux lignes...
Une idée ?
pas pour ton grep, mais ca vaudrait pas le coup de tenter de rebalancer ton dump sur un disque neuf ?
patpro
In article <Patrick.Stadelmann-D1866D.15155212072005@individual.net>,
Patrick Stadelmann <Patrick.Stadelmann@unine.ch> wrote:
Hello,
Je cherche un outil (ou les paramètres appropriés à passer à un outil
standard) qui puisse me donner la position de toutes les occurrences
d'une chaîne dans un fichier (le fichier fait 50 Go en fait un "dump"
d'un disque crashé obtenu avec dd).
J'ai essayé "grep -b" mais il n'aime pas trop les parties binaires. Mon
autre option est de passer par "hexdump -C" d'abord, mais comme là ma
chaîne risque d'être à cheval sur deux lignes...
Une idée ?
pas pour ton grep, mais ca vaudrait pas le coup de tenter de rebalancer
ton dump sur un disque neuf ?
Je cherche un outil (ou les paramètres appropriés à passer à un outil standard) qui puisse me donner la position de toutes les occurrences d'une chaîne dans un fichier (le fichier fait 50 Go en fait un "dump" d'un disque crashé obtenu avec dd).
J'ai essayé "grep -b" mais il n'aime pas trop les parties binaires. Mon autre option est de passer par "hexdump -C" d'abord, mais comme là ma chaîne risque d'être à cheval sur deux lignes...
Une idée ?
pas pour ton grep, mais ca vaudrait pas le coup de tenter de rebalancer ton dump sur un disque neuf ?
patpro
Patrick Stadelmann
In article , patpro ~ Patrick Proniewski wrote:
pas pour ton grep, mais ca vaudrait pas le coup de tenter de rebalancer ton dump sur un disque neuf ?
Pour l'instant je l'ai balancé (via dd à nouveau) dans une image disque, que je peux accéder comme un device (attaché avec hdid).
Patrick -- Patrick Stadelmann
In article <patpro-46706B.15204512072005@localhost>,
patpro ~ Patrick Proniewski <patpro@boleskine.patpro.net> wrote:
pas pour ton grep, mais ca vaudrait pas le coup de tenter de rebalancer
ton dump sur un disque neuf ?
Pour l'instant je l'ai balancé (via dd à nouveau) dans une image disque,
que je peux accéder comme un device (attaché avec hdid).
Patrick
--
Patrick Stadelmann <Patrick.Stadelmann@unine.ch>
pas pour ton grep, mais ca vaudrait pas le coup de tenter de rebalancer ton dump sur un disque neuf ?
Pour l'instant je l'ai balancé (via dd à nouveau) dans une image disque, que je peux accéder comme un device (attaché avec hdid).
Patrick -- Patrick Stadelmann
flipouk
Patrick Stadelmann wrote:
In article , patpro ~ Patrick Proniewski wrote:
pas pour ton grep, mais ca vaudrait pas le coup de tenter de rebalancer ton dump sur un disque neuf ?
Pour l'instant je l'ai balancé (via dd à nouveau) dans une image disque, que je peux accéder comme un device (attaché avec hdid).
Patrick Essaye la commande 'strings' :
Par ex., pour savoir si la chaine 'xyz' est présente dans le fichier binaire 'fichier.bin' : $ strings fichier.bin | grep xyz 'strings' liste toutes les chaines de caractères présentes dans un binaire. A+ F. -- ,_, (O,O) Plus je connais les hommes, ( ) Plus j'aime ma machine -"-"---------------------------------------------- Flipouk. GNU/Linux, MacOSX et Java : même combat ! --------------------------------------------------
Patrick Stadelmann wrote:
In article <patpro-46706B.15204512072005@localhost>,
patpro ~ Patrick Proniewski <patpro@boleskine.patpro.net> wrote:
pas pour ton grep, mais ca vaudrait pas le coup de tenter de rebalancer
ton dump sur un disque neuf ?
Pour l'instant je l'ai balancé (via dd à nouveau) dans une image disque,
que je peux accéder comme un device (attaché avec hdid).
Patrick
Essaye la commande 'strings' :
Par ex., pour savoir si la chaine 'xyz' est présente dans le fichier
binaire 'fichier.bin' :
$ strings fichier.bin | grep xyz
'strings' liste toutes les chaines de caractères présentes dans un binaire.
A+
F.
--
,_,
(O,O) Plus je connais les hommes,
( ) Plus j'aime ma machine
-"-"----------------------------------------------
Flipouk. GNU/Linux, MacOSX et Java : même combat !
--------------------------------------------------
pas pour ton grep, mais ca vaudrait pas le coup de tenter de rebalancer ton dump sur un disque neuf ?
Pour l'instant je l'ai balancé (via dd à nouveau) dans une image disque, que je peux accéder comme un device (attaché avec hdid).
Patrick Essaye la commande 'strings' :
Par ex., pour savoir si la chaine 'xyz' est présente dans le fichier binaire 'fichier.bin' : $ strings fichier.bin | grep xyz 'strings' liste toutes les chaines de caractères présentes dans un binaire. A+ F. -- ,_, (O,O) Plus je connais les hommes, ( ) Plus j'aime ma machine -"-"---------------------------------------------- Flipouk. GNU/Linux, MacOSX et Java : même combat ! --------------------------------------------------
Patrick Stadelmann
In article <42d3c920$0$8698$, flipouk wrote:
Essaye la commande 'strings' : Par ex., pour savoir si la chaine 'xyz' est présente dans le fichier binaire 'fichier.bin' : $ strings fichier.bin | grep xyz 'strings' liste toutes les chaines de caractères présentes dans un binaire.
Je connaissais la commande, mais je croyais qu'elle ne pouvait s'utiliser que sur des exécutables. J'ai fait un petit test, ça a l'air de marcher.
Merci !
Patrick -- Patrick Stadelmann
In article <42d3c920$0$8698$db0fefd9@news.zen.co.uk>,
flipouk <flipouk@yahoo.com> wrote:
Essaye la commande 'strings' :
Par ex., pour savoir si la chaine 'xyz' est présente dans le fichier
binaire 'fichier.bin' :
$ strings fichier.bin | grep xyz
'strings' liste toutes les chaines de caractères présentes dans un binaire.
Je connaissais la commande, mais je croyais qu'elle ne pouvait
s'utiliser que sur des exécutables. J'ai fait un petit test, ça a l'air
de marcher.
Merci !
Patrick
--
Patrick Stadelmann <Patrick.Stadelmann@unine.ch>
Essaye la commande 'strings' : Par ex., pour savoir si la chaine 'xyz' est présente dans le fichier binaire 'fichier.bin' : $ strings fichier.bin | grep xyz 'strings' liste toutes les chaines de caractères présentes dans un binaire.
Je connaissais la commande, mais je croyais qu'elle ne pouvait s'utiliser que sur des exécutables. J'ai fait un petit test, ça a l'air de marcher.
Merci !
Patrick -- Patrick Stadelmann
patpro ~ Patrick Proniewski
In article , Patrick Stadelmann wrote:
In article <42d3c920$0$8698$, flipouk wrote:
Essaye la commande 'strings' : Par ex., pour savoir si la chaine 'xyz' est présente dans le fichier binaire 'fichier.bin' : $ strings fichier.bin | grep xyz 'strings' liste toutes les chaines de caractères présentes dans un binaire.
Je connaissais la commande, mais je croyais qu'elle ne pouvait s'utiliser que sur des exécutables. J'ai fait un petit test, ça a l'air de marcher.
note que contrairement a grep ca ne t'aidera pas à connaitre l'emplacement de la chaine dans ton fichier car strings fait une ligne par chaine trouvée, et non pas une ligne par ligne analysée.
patpro
In article <Patrick.Stadelmann-EA9306.16003812072005@individual.net>,
Patrick Stadelmann <Patrick.Stadelmann@unine.ch> wrote:
In article <42d3c920$0$8698$db0fefd9@news.zen.co.uk>,
flipouk <flipouk@yahoo.com> wrote:
Essaye la commande 'strings' :
Par ex., pour savoir si la chaine 'xyz' est présente dans le fichier
binaire 'fichier.bin' :
$ strings fichier.bin | grep xyz
'strings' liste toutes les chaines de caractères présentes dans un binaire.
Je connaissais la commande, mais je croyais qu'elle ne pouvait
s'utiliser que sur des exécutables. J'ai fait un petit test, ça a l'air
de marcher.
note que contrairement a grep ca ne t'aidera pas à connaitre
l'emplacement de la chaine dans ton fichier car strings fait une ligne
par chaine trouvée, et non pas une ligne par ligne analysée.
Essaye la commande 'strings' : Par ex., pour savoir si la chaine 'xyz' est présente dans le fichier binaire 'fichier.bin' : $ strings fichier.bin | grep xyz 'strings' liste toutes les chaines de caractères présentes dans un binaire.
Je connaissais la commande, mais je croyais qu'elle ne pouvait s'utiliser que sur des exécutables. J'ai fait un petit test, ça a l'air de marcher.
note que contrairement a grep ca ne t'aidera pas à connaitre l'emplacement de la chaine dans ton fichier car strings fait une ligne par chaine trouvée, et non pas une ligne par ligne analysée.
Par ex., pour savoir si la chaine 'xyz' est présente dans le fichier binaire 'fichier.bin' : $ strings fichier.bin | grep xyz 'strings' liste toutes les chaines de caractères présentes dans un binaire.
J'imagine que dans le cas d'un dd de 50Go, le PO est sûr que la chaîne est bien présente. Par contre, ce qui l'intéresse doit être l'endroit (l'offset) où elle apparaît. Donc :
$ strings -o fichier.bin | grep xyz
Remarque: 'strings' ne considère que les chaînes purement ASCII.
Par ailleurs, cette méthode risque d'être lente sur un fichier de 50Go.
-- Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
Par ex., pour savoir si la chaine 'xyz' est présente dans le fichier
binaire 'fichier.bin' :
$ strings fichier.bin | grep xyz
'strings' liste toutes les chaines de caractères présentes dans un binaire.
J'imagine que dans le cas d'un dd de 50Go, le PO est sûr que la chaîne
est bien présente. Par contre, ce qui l'intéresse doit être l'endroit
(l'offset) où elle apparaît. Donc :
$ strings -o fichier.bin | grep xyz
Remarque: 'strings' ne considère que les chaînes purement ASCII.
Par ailleurs, cette méthode risque d'être lente sur un fichier de
50Go.
--
Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
Par ex., pour savoir si la chaine 'xyz' est présente dans le fichier binaire 'fichier.bin' : $ strings fichier.bin | grep xyz 'strings' liste toutes les chaines de caractères présentes dans un binaire.
J'imagine que dans le cas d'un dd de 50Go, le PO est sûr que la chaîne est bien présente. Par contre, ce qui l'intéresse doit être l'endroit (l'offset) où elle apparaît. Donc :
$ strings -o fichier.bin | grep xyz
Remarque: 'strings' ne considère que les chaînes purement ASCII.
Par ailleurs, cette méthode risque d'être lente sur un fichier de 50Go.
-- Paul Gaborit - <http://perso.enstimac.fr/~gaborit/>
Patrick Stadelmann
In article , patpro ~ Patrick Proniewski wrote:
note que contrairement a grep ca ne t'aidera pas à connaitre l'emplacement de la chaine dans ton fichier car strings fait une ligne par chaine trouvée, et non pas une ligne par ligne analysée.
En effet. En plus, ça semble en rater pas mal car j'ai beaucoup moins de match qu'en passant par hexdump.
Patrick -- Patrick Stadelmann
In article <patpro-374473.16022412072005@localhost>,
patpro ~ Patrick Proniewski <patpro@boleskine.patpro.net> wrote:
note que contrairement a grep ca ne t'aidera pas à connaitre
l'emplacement de la chaine dans ton fichier car strings fait une ligne
par chaine trouvée, et non pas une ligne par ligne analysée.
En effet. En plus, ça semble en rater pas mal car j'ai beaucoup moins de
match qu'en passant par hexdump.
Patrick
--
Patrick Stadelmann <Patrick.Stadelmann@unine.ch>
note que contrairement a grep ca ne t'aidera pas à connaitre l'emplacement de la chaine dans ton fichier car strings fait une ligne par chaine trouvée, et non pas une ligne par ligne analysée.
En effet. En plus, ça semble en rater pas mal car j'ai beaucoup moins de match qu'en passant par hexdump.
Patrick -- Patrick Stadelmann
Patrick Stadelmann
In article , Patrick Stadelmann wrote:
In article , patpro ~ Patrick Proniewski wrote:
note que contrairement a grep ca ne t'aidera pas à connaitre l'emplacement de la chaine dans ton fichier car strings fait une ligne par chaine trouvée, et non pas une ligne par ligne analysée.
En effet. En plus, ça semble en rater pas mal car j'ai beaucoup moins de match qu'en passant par hexdump.
OK, c'est bon j'ai une solution. Ma chaîne étant de 6 caractères et hexdump -C affichant par ligne de 16 caractère, si je lance l'opération une fois en partant de 0 et une fois en partant de 8, je trouverai toutes les occurrences.
Merci à tous pour vos suggestions,
Patrick -- Patrick Stadelmann
In article <Patrick.Stadelmann-2F2E30.17213112072005@individual.net>,
Patrick Stadelmann <Patrick.Stadelmann@unine.ch> wrote:
In article <patpro-374473.16022412072005@localhost>,
patpro ~ Patrick Proniewski <patpro@boleskine.patpro.net> wrote:
note que contrairement a grep ca ne t'aidera pas à connaitre
l'emplacement de la chaine dans ton fichier car strings fait une ligne
par chaine trouvée, et non pas une ligne par ligne analysée.
En effet. En plus, ça semble en rater pas mal car j'ai beaucoup moins de
match qu'en passant par hexdump.
OK, c'est bon j'ai une solution. Ma chaîne étant de 6 caractères et
hexdump -C affichant par ligne de 16 caractère, si je lance l'opération
une fois en partant de 0 et une fois en partant de 8, je trouverai
toutes les occurrences.
Merci à tous pour vos suggestions,
Patrick
--
Patrick Stadelmann <Patrick.Stadelmann@unine.ch>
note que contrairement a grep ca ne t'aidera pas à connaitre l'emplacement de la chaine dans ton fichier car strings fait une ligne par chaine trouvée, et non pas une ligne par ligne analysée.
En effet. En plus, ça semble en rater pas mal car j'ai beaucoup moins de match qu'en passant par hexdump.
OK, c'est bon j'ai une solution. Ma chaîne étant de 6 caractères et hexdump -C affichant par ligne de 16 caractère, si je lance l'opération une fois en partant de 0 et une fois en partant de 8, je trouverai toutes les occurrences.
Merci à tous pour vos suggestions,
Patrick -- Patrick Stadelmann
Saïd
Patrick Stadelmann :
Hello,
Je cherche un outil (ou les paramètres appropriés à passer à un outil standard) qui puisse me donner la position de toutes les occurrences d'une chaîne dans un fichier (le fichier fait 50 Go en fait un "dump" d'un disque crashé obtenu avec dd).
J'ai essayé "grep -b" mais il n'aime pas trop les parties binaires. Mon autre option est de passer par "hexdump -C" d'abord, mais comme là ma chaîne risque d'être à cheval sur deux lignes...
Une idée ?
Merci,
Patrick
Si ta chaine ne contient aucune repetition, le programme C pour la detecter en ne faisant qu'une passe sur chaque caractere est trivial a ecrire. Sinon il faut reflechir et ca fait mal a la tete.
-- Saïd. C programmers never die - they're just cast into void.
Patrick Stadelmann :
Hello,
Je cherche un outil (ou les paramètres appropriés à passer à un outil
standard) qui puisse me donner la position de toutes les occurrences
d'une chaîne dans un fichier (le fichier fait 50 Go en fait un "dump"
d'un disque crashé obtenu avec dd).
J'ai essayé "grep -b" mais il n'aime pas trop les parties binaires. Mon
autre option est de passer par "hexdump -C" d'abord, mais comme là ma
chaîne risque d'être à cheval sur deux lignes...
Une idée ?
Merci,
Patrick
Si ta chaine ne contient aucune repetition, le programme C pour la detecter
en ne faisant qu'une passe sur chaque caractere est trivial a ecrire. Sinon
il faut reflechir et ca fait mal a la tete.
--
Saïd.
C programmers never die - they're just cast into void.
Je cherche un outil (ou les paramètres appropriés à passer à un outil standard) qui puisse me donner la position de toutes les occurrences d'une chaîne dans un fichier (le fichier fait 50 Go en fait un "dump" d'un disque crashé obtenu avec dd).
J'ai essayé "grep -b" mais il n'aime pas trop les parties binaires. Mon autre option est de passer par "hexdump -C" d'abord, mais comme là ma chaîne risque d'être à cheval sur deux lignes...
Une idée ?
Merci,
Patrick
Si ta chaine ne contient aucune repetition, le programme C pour la detecter en ne faisant qu'une passe sur chaque caractere est trivial a ecrire. Sinon il faut reflechir et ca fait mal a la tete.
-- Saïd. C programmers never die - they're just cast into void.
nospam
Patrick Stadelmann wrote:
Une idée ?
Essaye strings.
% pwd /Applications/Mail.app/Contents/MacOS % strings Mail|more __dyld_mod_term_funcs __dyld_make_delayed_module_initializer_calls __dyld_image_count __dyld_get_image_name __dyld_get_image_header __dyld_NSLookupSymbolInImage __dyld_NSAddressOfSymbol libobjc __objcInit The kernel support for the dynamic linker is not present to run this program. YES_BUTTON Alerts NO_BUTTON MAILBOX_DISPLAY_STRING_FORMAT %@ in %@ MAILBOX_ACCOUNT_DISABLED_MESSAGE_FORMAT The mailbox "%@" is not available because its account is disabled. Do you want to choose a different mailbox? ACCOUNT_DOESNT_EXIST_MESSAGE_FORMAT The mailbox at path %@ is not available because it has no account. Do you want to choose a different mailbox? MAILBOX_DOESNT_EXIST_TITLE Mailbox Does Not Exist CHOOSE_MAILBOX_BUTTON Choose Mailbox CANCEL_BUTTON Cancel SelectMailboxPanel LARGE_MESSAGE_TITLE Confirm Message Download DOWNLOAD_BUTTON Download SKIP_BUTTON Skip DELETE_BUTTON Delete com.apple.iCal MFUserAgent MailApp /System/Library/Frameworks/Message.framework/PrivateHeaders/NSRangeUtils
... -- Jacques
Patrick Stadelmann <Patrick.Stadelmann@unine.ch> wrote:
Une idée ?
Essaye strings.
% pwd
/Applications/Mail.app/Contents/MacOS
% strings Mail|more
__dyld_mod_term_funcs
__dyld_make_delayed_module_initializer_calls
__dyld_image_count
__dyld_get_image_name
__dyld_get_image_header
__dyld_NSLookupSymbolInImage
__dyld_NSAddressOfSymbol
libobjc
__objcInit
The kernel support for the dynamic linker is not present to run this
program.
YES_BUTTON
Alerts
NO_BUTTON
MAILBOX_DISPLAY_STRING_FORMAT
%@ in %@
MAILBOX_ACCOUNT_DISABLED_MESSAGE_FORMAT
The mailbox "%@" is not available because its account is disabled.
Do you want to choose a different mailbox?
ACCOUNT_DOESNT_EXIST_MESSAGE_FORMAT
The mailbox at path %@ is not available because it has no account.
Do you want to choose a different mailbox?
MAILBOX_DOESNT_EXIST_TITLE
Mailbox Does Not Exist
CHOOSE_MAILBOX_BUTTON
Choose Mailbox
CANCEL_BUTTON
Cancel
SelectMailboxPanel
LARGE_MESSAGE_TITLE
Confirm Message Download
DOWNLOAD_BUTTON
Download
SKIP_BUTTON
Skip
DELETE_BUTTON
Delete
com.apple.iCal
MFUserAgent
MailApp
/System/Library/Frameworks/Message.framework/PrivateHeaders/NSRangeUtils
% pwd /Applications/Mail.app/Contents/MacOS % strings Mail|more __dyld_mod_term_funcs __dyld_make_delayed_module_initializer_calls __dyld_image_count __dyld_get_image_name __dyld_get_image_header __dyld_NSLookupSymbolInImage __dyld_NSAddressOfSymbol libobjc __objcInit The kernel support for the dynamic linker is not present to run this program. YES_BUTTON Alerts NO_BUTTON MAILBOX_DISPLAY_STRING_FORMAT %@ in %@ MAILBOX_ACCOUNT_DISABLED_MESSAGE_FORMAT The mailbox "%@" is not available because its account is disabled. Do you want to choose a different mailbox? ACCOUNT_DOESNT_EXIST_MESSAGE_FORMAT The mailbox at path %@ is not available because it has no account. Do you want to choose a different mailbox? MAILBOX_DOESNT_EXIST_TITLE Mailbox Does Not Exist CHOOSE_MAILBOX_BUTTON Choose Mailbox CANCEL_BUTTON Cancel SelectMailboxPanel LARGE_MESSAGE_TITLE Confirm Message Download DOWNLOAD_BUTTON Download SKIP_BUTTON Skip DELETE_BUTTON Delete com.apple.iCal MFUserAgent MailApp /System/Library/Frameworks/Message.framework/PrivateHeaders/NSRangeUtils