Bruno Berteau wrote:
Bonjour,
Je cherche un outil comme sed mais pour les fichiers binaires. Je
m'explique :
J'ai des fichiers faits avec un obscure traitement de texte d'une
autre époque, dont j'aimerai récupérer le texte. En les regardant dans
un éditeur hexadécimal j'ai vu qu'il suffisait de quelques
substitutions d'octets dans le fichier binaire pour en faire un
fichier texte pur (par ex. les espaces sont codés en hexadécimal 87 au
lieu de 20). On peut faire des rechercher/remplacer avec un éditeur
hexadécimal mais ça serait fastidieux car il y a une vingtaine de
fichiers à traiter et dans chacun d'eux il faut recoder les espaces,
les lettres accentués, et les ç. Voilà pourquoi je voudrais
automatiser le processus un peu à la sed -e "s/windows/linux/" -e
"s/propriétaire/libre/" monfichier > nouveaufichier mais sur des
octets ou des séquences d'octets.
;)
Merci de vos lumières.
tr est fait pour cela ( == TRansliteration):
tr 'liste-de-cibles' 'liste-de-substitution' < input > output
tr 'a-z' 'A-Z' < file > outfile : met tout en majuscules...
pour cibler des 'non-printables' tu peux par ex utiliser la notation
octale, ex: \015
(octal pour <Carriage Return> =13 en decimal)
tr '\015\013' 'CN' < file > outfile
va substituer tous les <carriage return> par des 'C' et tous les <Line
feed> par des ' L'
voir : man tr ;-)
Bon amusement,
Alain
begin:vcard
fn:Dr Alain EMPAIN
n:EMPAIN;Dr Alain
org:Fac. Veterinary Med., Univ. of LIEGE;Molecular Genetics
adr:Sart-Tilman;;B43;LIEGE;;B-4000;Belgium
email;internet:[EMAIL PROTECTED]
tel;work:+32 4 366 4497
tel;home:+32 85 51.23.41
tel;cell:+32 497 70.17.64
x-mozilla-html:FALSE
version:2.1
end:vcard
_______________________________________________________
Linux Mailing List - http://www.unixtech.be
Subscribe/Unsubscribe: http://lists.unixtech.be/cgi-bin/mailman/listinfo/linux
Archives: http://www.mail-archive.com/linux@lists.unixtech.be
IRC: chat.unixtech.be:6667 - #unixtech
NNTP: news.gname.org - gmane.org.user-groups.linux.unixtech