Re: non ascii suchen
"Roland M. Kruggel" <rk-liste@gmx.de> writes:
> [...]
>
>> Ich fürchte, du musst die Aufgabenstellung genauer klären.
>>
>> Wenn man den einfachsten Fall annimmt, möchtest du alle
>> nicht-druckbaren ASCII-Zeichen. Dann würde so was reichen:
>>
>> sed 's/[^ -~]/#/g'
>
> Das war nix. Der wandelt so ziemlich alles um :)
So war die Aufgabenstellung. Wie schon der alte Goethe sagte: Ist der
Input putt, ist der Output auch putt.
>
> Beim durchsehen der Daten habe ich, zufällig, nichtdruckbare zeichen
> gefunden. ^H\^I ... Die habe da nix drin zu suchen. Die muss ich
> finden.
Also bleiben wir mal bei den zweien: ^H und ^I. Das wäre dann in
einer Variablen:
regex=\[$'\x08'$'\c09'\]
oder, wenn du es unübersichtlich möchtest:
regex=" "
Was dein Newsreader hier anzeigt, weiß ich nicht; im Emacs habe ich
C-q C-h C-Q C-i getippt, was die beiden Zeichen erzeugt. ^I ist
übrigens ein TAB und ^H ein Backspace. Natürlich brauchst du die
Variable nicht und kannst im Folgenden den rechten Teil des Ausdrucks
stattdessen tippen.
Wenn die sie finden und anzeigen möchteset, wäre (alles ungetestet):
grep "$regex" filename
(die Anführungszeichen sind nicht unbedingt erforderlich)
Wenn du sie löschen willst, wäre
sed "s/$regex//g"
passender.
> Was ich brauche ist nur die Zeilennummer der entschrechenden datei.
Ich sollte vorher alles lesen. Das wäre dann:
grep -nq "$regex" filename
Gruß,
Heike
Reply to: