Sådan fjerner du sidste n-tegn fra en streng i Bash

Sadan Fjerner Du Sidste N Tegn Fra En Streng I Bash



Bash er et populært shell-scriptsprog, der er meget brugt i Linux- og Unix-baserede operativsystemer. En af de almindelige opgaver i Bash-scripting er at manipulere strenge. Nogle gange bliver det nødvendigt at fjerne de sidste n tegn fra en streng. Denne artikel vil gennemgå flere Bash-metoder til at fjerne de sidste n tegn fra en streng.

Sådan fjerner du sidste n-tegn fra en streng i Bash

I Bash kan trimning af bagerste mellemrum fra brugerinput eller fjernelse af de sidste n tegn fra en streng bruges til at rydde op i filnavne med uønskede udvidelser:

Metode 1: Brug cut Command

Cut-kommandoen i Bash bruges til at udtrække sektioner fra hver linje i en fil. Det kan også bruges til at udtrække et specifikt udvalg af tegn fra en streng. For at fjerne de sidste n tegn fra en streng, kan vi bruge cut-kommandoen med muligheden -c, og her er syntaksen:







ekko 'snor' | skære -c -n

Her er strengen den faktiske streng, som vi vil fjerne de sidste n tegn fra, og n er antallet af tegn, vi vil fjerne, nedenfor er eksemplet, der bruger ovenstående syntaks:



#!/bin/bash

snor = 'Hej Linux'

ekko ' $streng ' | skære -c -5

I ovenstående eksempel har vi brugt cut-kommandoen til at fjerne de sidste 6 tegn fra strengen 'Hello Linux', og outputtet er 'Hello'.



  Grafisk brugergrænseflade, tekst Beskrivelse genereret automatisk





Metode 2: Brug sed Command

Sed er en kraftfuld stream-editor, der kan bruges til at udføre forskellige teksttransformationer på en fil eller en inputstrøm. For at fjerne de sidste n tegn fra en streng ved hjælp af sed, kan vi bruge følgende kommandosyntaks:

ekko 'snor' | men 's/.\{n\}$//'

Her er n antallet af tegn, vi ønsker at fjerne fra slutningen af ​​strengen, og nedenfor er et eksempel, der bruger sed-kommandoen:



#!/bin/bash

snor = 'Hej Linux'

ekko ' $streng ' | men 's/.\{6\}$//'

I ovenstående eksempel har vi brugt sed-kommandoen til at fjerne de sidste 6 tegn fra strengen 'Hello Linux', og outputtet er 'Hello'.

  Grafisk brugergrænseflade, tekst Beskrivelse genereret automatisk

Metode 3: Brug af parameterudvidelse

Parameterudvidelse er en funktion i Bash, der giver os mulighed for at manipulere værdien af ​​en variabel. For at fjerne de sidste n tegn fra en streng ved hjælp af parameterudvidelse, kan vi bruge følgende syntaks:

${string::-n}

Her indeholder strengvariablen den aktuelle streng, som vi ønsker at fjerne de sidste n tegn fra, og n er antallet af tegn, vi ønsker at fjerne.

#!/bin/bash

snor = 'Hej Linux'

ekko ${string::-6}

I ovenstående eksempel har vi brugt parameterudvidelse til at fjerne de sidste 4 tegn fra strengen 'Hello Linux', og outputtet er 'Hello'.

  Grafisk brugergrænseflade, tekst Beskrivelse genereret automatisk

Konklusion

For at fjerne de sidste n tegn fra en streng i bash, er cut-kommandoen, sed-kommandoen og parameterudvidelsen de tre måder. Disse metoder er nemme at bruge og kan være nyttige i forskellige Bash scripting opgaver. Ved at bruge disse metoder kan vi nemt manipulere strenge og udføre teksttransformationer i Bash.