For at matche 3 eller flere på hinanden følgende mellemrumstegn (inklusive tabulatorer) i sed og erstatte dem med 2 mellemrum, kan du bruge følgende fremgangsmåde:
sed -E 's/[[:space:]]{3,}/ /g' inputfile > outputfile
Her er en forklaring på kommandoen:
sed -E
: Aktiverer udvidede regulære udtryk.'s/[[:space:]]{3,}/ /g'
:
s/
: Starter en erstatningskommando.[[:space:]]{3,}
: Matcher 3 eller flere på hinanden følgende mellemrumstegn (inklusive tabulatorer)./ /
: Erstatter de matchede mellemrumstegn med 2 mellemrum./g
: Anvender erstatningen globalt på hver linje.inputfile
: Navnet på inputfilen, der skal behandles.outputfile
: Navnet på outputfilen, hvor resultatet gemmes.Eksempel:
echo -e "Dette er en test" | sed -E 's/[[:space:]]{3,}/ /g'
Output:
Dette er en test
Dette vil erstatte alle forekomster af 3 eller flere på hinanden følgende mellemrumstegn med 2 mellemrum i den angivne tekst eller fil.
Har du brug for hjælp til tekstredigering eller sed-kommandoer? Med Handyhand kan du nemt oprette din opgave gratis og få bud fra dygtige hjælpere på få minutter. Gør dit arbejde lettere og få professionel assistance, når du har brug for det!