Slik fjerner du siste n-tegn fra en streng i Bash

Slik Fjerner Du Siste N Tegn Fra En Streng I Bash



Bash er et populært shell-skriptspråk som er mye brukt i Linux- og Unix-baserte operativsystemer. En av de vanlige oppgavene i Bash-skripting er å manipulere strenger. Noen ganger blir det nødvendig å fjerne de siste n tegnene fra en streng. Denne artikkelen vil gå gjennom flere Bash-metoder for å fjerne de siste n tegnene fra en streng.

Slik fjerner du siste n-tegn fra en streng i Bash

I Bash kan trimming av etterfølgende mellomrom fra brukerinndata eller fjerning av de siste n tegnene fra en streng brukes til å rydde opp i filnavn med uønskede utvidelser:

Metode 1: Bruk cut Command

Cut-kommandoen i Bash brukes til å trekke ut deler fra hver linje i en fil. Den kan også brukes til å trekke ut et spesifikt utvalg av tegn fra en streng. For å fjerne de siste n tegnene fra en streng, kan vi bruke cut-kommandoen med alternativet -c, og her er syntaksen:







ekko 'streng' | kutte opp -c -n

Her er strengen den faktiske strengen som vi ønsker å fjerne de siste n tegnene fra, og n er antall tegn vi ønsker å fjerne, nedenfor er eksemplet som bruker syntaksen ovenfor:



#!/bin/bash

streng = 'Hei Linux'

ekko ' $string ' | kutte opp -c -5

I eksemplet ovenfor har vi brukt cut-kommandoen for å fjerne de siste 6 tegnene fra strengen 'Hello Linux', og utgangen er 'Hello'.



  Grafisk brukergrensesnitt, tekst Beskrivelse automatisk generert





Metode 2: Bruk sed Command

Sed er en kraftig stream-editor som kan brukes til å utføre ulike teksttransformasjoner på en fil eller en strøm av input. For å fjerne de siste n tegnene fra en streng ved hjelp av sed, kan vi bruke følgende kommandosyntaks:

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

Her er n antall tegn vi ønsker å fjerne fra slutten av strengen, og nedenfor er et eksempel som bruker sed-kommandoen:



#!/bin/bash

streng = 'Hei Linux'

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

I eksemplet ovenfor har vi brukt sed-kommandoen for å fjerne de siste 6 tegnene fra strengen 'Hello Linux' og utdataene er 'Hello'.

  Grafisk brukergrensesnitt, tekst Beskrivelse automatisk generert

Metode 3: Bruk av parameterutvidelse

Parameterutvidelse er en funksjon i Bash som lar oss manipulere verdien til en variabel. For å fjerne de siste n tegnene fra en streng ved hjelp av parameterutvidelse, kan vi bruke følgende syntaks:

${string::-n}

Her inneholder strengvariabelen den faktiske strengen som vi ønsker å fjerne de siste n tegnene fra, og n er antallet tegn vi ønsker å fjerne.

#!/bin/bash

streng = 'Hei Linux'

ekko ${string::-6}

I eksemplet ovenfor har vi brukt parameterutvidelse for å fjerne de siste 4 tegnene fra strengen 'Hello Linux' og utgangen er 'Hello'.

  Grafisk brukergrensesnitt, tekst Beskrivelse automatisk generert

Konklusjon

For å fjerne de siste n tegnene fra en streng i bash, er cut-kommandoen, sed-kommandoen og parameterutvidelsen de tre måtene. Disse metodene er enkle å bruke og kan være nyttige i ulike Bash-skriptoppgaver. Ved å bruke disse metodene kan vi enkelt manipulere strenger og utføre teksttransformasjoner i Bash.