Overzicht
sed leest de invoerstroom (bestand of standaardinvoer) regel voor regel, past het opgegeven script (commando) toe en stuurt het resultaat naar de standaarduitvoer. Het wordt voornamelijk gebruikt voor het wijzigen van de inhoud van tekstbestanden, het zoeken en vervangen van specifieke patronen, en het verwijderen van regels.
Belangrijkste functies
- Krachtige patroonherkenning met reguliere expressies
- Tekstvervanging (substitution)
- Regelverwijdering (deletion)
- Regelinvoeging en -toevoeging (insertion/appending)
- Directe wijziging van bestandsinhoud (-i optie)
Belangrijkste opties
De belangrijkste opties van het sed-commando regelen de manier waarop scripts worden opgegeven of het uitvoergedrag.
Script- en gedragscontrole
Gegenereerde opdracht:
Probeer de opdrachtcombinaties.
Uitleg:
`sed` Voer het commando uit.
Combineer deze opties en voer de opdracht virtueel uit met de AI.
Gebruiksvoorbeelden
Leer tekstverwerkingstechnieken met verschillende gebruiksvoorbeelden van sed.
Specifieke tekst vervangen
sed 's/oude_tekst/nieuwe_tekst/g' bestandsnaam.txt
Vervangt alle voorkomens van 'oude_tekst' door 'nieuwe_tekst' in het bestand. De 'g' vlag vervangt alle overeenkomsten op één regel.
Regels met een specifiek patroon verwijderen
sed '/error/d' logbestand.txt
Verwijdert alle regels die het woord 'error' bevatten.
Bestandsinhoud direct wijzigen
sed -i.bak 's/DEBUG=true/DEBUG=false/g' config.txt
Wijzigt 'DEBUG=true' naar 'DEBUG=false' in het originele 'config.txt' bestand en maakt een back-upbestand met de extensie '.bak'.
Alleen de eerste 5 regels afdrukken
sed -n '1,5p' data.txt
Drukt alleen de eerste 5 regels van het bestand af. Gebruikt de '-n' optie en het '1,5p' commando.
Lege regels verwijderen
sed '/^$/d' document.txt
Verwijdert volledig lege regels uit het bestand.
Tips & Aandachtspunten
Aandachtspunten en tips voor efficiënt gebruik van sed.
Misvatting over de sed -d optie
Met betrekking tot de verstrekte hint 'sed-d', is `-d` geen geldige opdrachtregeloptie voor `sed`. `sed`-commando's gebruiken opties zoals `-e`, `-f`, `-i`, `-n`, enzovoort. Als u `sed -d` uitvoert, zal `sed` `-d` interpreteren als een bestandsnaam of een foutmelding voor een onbekende optie genereren.
Correct gebruik van het d commando
`d` is een commando dat binnen een `sed`-script wordt gebruikt om specifieke regels te verwijderen. Bijvoorbeeld, `sed '/patroon/d' bestand` verwijdert alle regels die 'patroon' bevatten. Dit is een volledig ander concept dan de opdrachtregeloptie `-d`.
Voorbeeld van het gebruik van het d commando
sed '/te_verwijderen_string/d' input.txt > output.txt
Verwijdert regels die 'te_verwijderen_string' bevatten uit het bestand.
Gebruik van reguliere expressies
De kracht van sed ligt in reguliere expressies. Door verschillende metatekens (zoals `^`, `$`, `*`, `+`, `?`, `.` enz.) te beheersen, kunt u complexe patroonherkenning en vervanging uitvoeren.
- `^`: Begin van de regel
- `$`: Einde van de regel
- `.`: Elk enkel teken
- `*`: Het voorgaande teken wordt nul of meer keer herhaald
- `s/oud/nieuw/g`: Vervang alle 'oud' door 'nieuw'
- `/patroon/d`: Verwijder regels met 'patroon'
Maak er een gewoonte van om back-ups te maken
Wanneer u bestanden direct wijzigt met de `-i` optie, is het raadzaam om altijd een back-upsuffix op te geven om verlies van het originele bestand te voorkomen (bijv. `sed -i.bak ...`).