Vraag & Antwoord

OS Linux

Klein vraagje

5 antwoorden
  • Met LESS kan je door documenten scrollen, boven en onder. Hoe kan ik met behulp hiervan bijvoorbeeld bepaalde dingen in een document laten vervangen door een door mij opgegeven character, zoals een asterix. Ik wil namelijk in mijn document alle cijfers vervangen door een asterix. Bedankt
  • Ik denk dat je daar een scriptje voor nodig bent...
  • dit kun je natuurlijk met een teksteditor doen. je opent het bestand, gebruikt de zoek- en vervang functie, en slaat het weer op. maar het kan ook met sed (Stream Editor, zie man sed). Sed geef je een klein scriptje mee, en de naam van het bestand dat je wilt bewerken. bijvoorbeeld: [b:157bc5fd1e]sed "s/[0-9]/*/g" bestand.txt > nieuw.txt[/b:157bc5fd1e] vervangt elk cijferteken in bestand.txt door een "*". De constructie > nieuw.txt zorgt ervoor dat de uitvoer wordt opgeslagen in dat bestand.
  • lukt het ook met: [code:1:655b32da19] tr [0-9] [*] [/code:1:655b32da19] Ik heb er iets over gelezen, maar hoe werkt het precies?
  • bestudeer de manpage van tr: [b:63d40065a9]man tr[/b:63d40065a9] (of in Konqueror: [b:63d40065a9]man:/tr[/b:63d40065a9]) je kunt zoiets doen volgens mij, met tr: tr '[0-9]' '*' < bestand.txt > nieuw.txt Is eigenlijk nog simpeler dan met sed. :-) Het idee van tr is dat als een teken uit het bronbestand overeenkomt met een teken uit de eerste tekenreeks, dat wordt vervangen door het corresponderende teken uit de tweede tekenreeks. Bijvoorbeeld [b:63d40065a9]tr ABC XYZ[/b:63d40065a9] vervangt elke A door een X, elke B door een Y, en elke C door een Z. In de [i:63d40065a9]eerste set[/i:63d40065a9] kun je speciale tekens gebruiken, die meerdere tekens in het bronbestand kunnen 'matchen', bijvoorbeeld de constructie [b:63d40065a9][0-9][/b:63d40065a9]. Deze matcht elk teken van '0' t/m '9'. Dus in het eerste voorbeeld bestaat de eerste tekenreeks uit 1 teken (namelijk: een teken van 0 t/m 9), en de tweede ook uit 1, nl '*'. Elk cijfer wordt zodoende door een asterisk vervangen.

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.