Kuinka poistaa viimeiset n merkkiä merkkijonosta Bashissa

Kuinka Poistaa Viimeiset N Merkkia Merkkijonosta Bashissa



Bash on suosittu komentosarjakieli, jota käytetään laajasti Linux- ja Unix-pohjaisissa käyttöjärjestelmissä. Yksi Bash-komentosarjan yleisistä tehtävistä on merkkijonojen käsittely. Joskus on tarpeen poistaa viimeiset n merkkiä merkkijonosta. Tässä artikkelissa käydään läpi useita Bash-menetelmiä, joilla poistetaan viimeiset n merkkiä merkkijonosta.

Kuinka poistaa viimeiset n merkkiä merkkijonosta Bashissa

Bashissa käyttäjän syötteiden lopussa olevan välilyönnin leikkaamista tai merkkijonon viimeisten n merkin poistamista voidaan käyttää tiedostonimien siivoamiseen, joilla on ei-toivottu tunniste:

Tapa 1: Käytä leikkauskomentoa

Bashin leikkauskomentoa käytetään poimimaan osia tiedoston jokaiselta riviltä. Sitä voidaan käyttää myös tietyn merkkialueen poimimiseen merkkijonosta. Poistaaksesi viimeiset n merkkiä merkkijonosta, voimme käyttää cut-komentoa valitsimella -c, ja tässä on syntaksi:







kaiku 'merkkijono' | leikata -c -n

Tässä merkkijono on varsinainen merkkijono, josta haluamme poistaa viimeiset n merkkiä, ja n on poistettavien merkkien määrä. Alla on esimerkki, joka käyttää yllä olevaa syntaksia:



#!/bin/bash

merkkijono = 'Hei Linux'

kaiku ' $string ' | leikata -c -5

Yllä olevassa esimerkissä olemme käyttäneet cut-komentoa poistamaan viimeiset 6 merkkiä merkkijonosta 'Hello Linux' ja tulos on 'Hei'.



  Graafinen käyttöliittymä, teksti Kuvaus luodaan automaattisesti





Tapa 2: Käytä sed-komentoa

Sed on tehokas stream-editori, jota voidaan käyttää erilaisiin tekstimuunnoksiin tiedostoon tai syöttövirtaan. Poistaaksemme viimeiset n merkkiä merkkijonosta käyttämällä sed:tä, voimme käyttää seuraavaa komentosyntaksia:

kaiku 'merkkijono' | mutta 's/.\{n\}$//'

Tässä n on merkkien lukumäärä, jotka haluamme poistaa merkkijonon lopusta, ja alla on esimerkki, joka käyttää sed-komentoa:



#!/bin/bash

merkkijono = 'Hei Linux'

kaiku ' $string ' | mutta 's/.\{6\}$//'

Yllä olevassa esimerkissä olemme käyttäneet sed-komentoa poistamaan viimeiset 6 merkkiä merkkijonosta 'Hello Linux' ja tulos on 'Hei'.

  Graafinen käyttöliittymä, teksti Kuvaus luodaan automaattisesti

Tapa 3: Parametrilaajennuksen käyttäminen

Parametrien laajennus on Bashin ominaisuus, jonka avulla voimme manipuloida muuttujan arvoa. Jos haluat poistaa viimeiset n merkkiä merkkijonosta parametrilaajennuksella, voimme käyttää seuraavaa syntaksia:

${string::-n}

Tässä merkkijonomuuttuja sisältää varsinaisen merkkijonon, josta haluamme poistaa viimeiset n merkkiä, ja n on poistettavien merkkien määrä.

#!/bin/bash

merkkijono = 'Hei Linux'

kaiku ${string::-6}

Yllä olevassa esimerkissä olemme käyttäneet parametrin laajennusta poistamaan viimeiset 4 merkkiä merkkijonosta 'Hello Linux' ja tulos on 'Hei'.

  Graafinen käyttöliittymä, teksti Kuvaus luodaan automaattisesti

Johtopäätös

Voit poistaa viimeiset n merkkiä merkkijonosta bashissa käyttämällä cut-komentoa, sed-komentoa ja parametrin laajentamista kolmella tavalla. Nämä menetelmät ovat helppokäyttöisiä ja voivat olla hyödyllisiä erilaisissa Bash-komentosarjatehtävissä. Näitä menetelmiä käyttämällä voimme helposti käsitellä merkkijonoja ja tehdä tekstimuunnoksia Bashissa.