Bash Usuń ostatnie X znaków z ciągu?

Bash Usuń ostatnie X znaków z ciągu?

Istnieje kilka sposobów lub poleceń, których możemy użyć do usunięcia ostatnich znaków z wartości łańcuchowej w Bash, w tym „cięcie”, „sed” „komplement”, „awk” i inne. „%” I „?„Można również zastosować operatorzy, aby wyeliminować element końcowy z łańcucha. Korzystając z polecenia „Cut” w Bash, możemy również usunąć określony znak z ciągu, który chcemy wyeliminować. W tym artykule pokażemy różne techniki usuwania elementów z sekwencji.

Przykład nr 1: Usuwanie ostatnich znaków ze sznurka w Bash

W tym przykładzie użyjemy „%” i „?„Symbole w poleceniu, aby wyeliminować końcowe znaki z łańcucha w Bash. Przed zastosowaniem tych symboli w poleceń najpierw upewnimy się, że wiesz, że wyeliminują one ostatnie kilka znaków z ciągu i dostosują liczbę znaków zgodnie z scenariuszem. W zależności od tego, co chcemy wyeliminować, możemy odciąć ostatnie segmenty sznurka na dowolne sposoby.

Zacznijmy teraz wdrażać polecenie, aby usunąć ostatnie znaki z ciągu i wyświetlić standardowe wyjście w oknie terminalu. Zmienna słów kluczowych zostanie użyta w pierwszej, a ciąg listy zostanie przypisany do niej. W Bash zmienna może przechowywać liczbę, określone słowo lub zestaw znaków. Możesz skonstruować zmienną, podając wartość jej odniesienia bez konieczności deklarowania. Jeśli chcesz odczytać dane ze zmiennej, musisz użyć symbolu „$” przed nazwą zmiennej.

Wartość łańcucha to „Uwielbiam języki programowania”. Dlatego po wpisaniu zmiennej musimy dodać ciąg wewnątrz odwróconych przecinków. W poleceniu nie daliśmy żadnej przestrzeni. W tym wierszu ciąg zawiera cztery słowa. W tej sekcji usuniemy ostatnie słowo „języki”. Następnie, w poniższym wierszu, używamy oświadczenia „Echo”, a następnie znaku dolara „$”. Wewnątrz echo używamy nawiasów kręconych i wewnątrz nawiasów kręconych, mijamy sznurek przechowywany w „zmiennej” jako argument. Następnie używamy symbolu „%”, aby usunąć ostatnie znaki z łańcucha, a następnie symbol „?”Aby wskazać, ile ostatnich znaków chcemy usunąć. W związku z tym wyeliminujemy dziewięć liter „Języki” z tej linii. Tak więc po odsetku symbolu wprowadzamy dziewięć znaków pytań.

Linux@Linux: ~ $ varible = ”ILoveProgramingLanguages”
Linux@Linux: ~ $ echo $ zmienna%?????????

Jak widać na poniższym obrazku, po uruchomieniu tego polecenia wynik jest prezentowany bez słowa „języki”. Wyświetlana wartość ciągu to teraz trzy słowa „iloveprogramming” nie ma miejsca po słowach, ponieważ w danej wartości.

Teraz, w następnej sekcji, usuniemy kilka pierwszych znaków lub pierwsze słowo z łańcucha za pomocą symbolu „#”, który służy do usuwania znaków z ciągów na początku. W tym celu użyjemy tego samego polecenia. Najpierw przekazujemy ciąg „Idę do USA” wewnątrz odwróconego przecinka, który jest przechowywany w utworzonej „zmiennej”. Następnie, w poniższym kroku, używamy polecenia „echo”, w środku używamy symbolu „$”.

Następnie używamy nawiasów kręconych, wewnątrz tych nawiasów, ponieważ tam jest zapisany ciąg. Tak więc przekazujemy „zmienną”, a następnie używamy symbolu skrótu „#”. Następnie wpisujemy cztery „?„Znaki pytań, które usuną pierwsze cztery znaki z ciągu. Tutaj przestrzeń jest również uważana za postać.

Linux@Linux: ~ $ variable = ”jadę do USA”
Linux@Linux: ~ $ echo $ zmienna#????

Teraz, gdy pierwsze dwa słowa łańcucha „I Am” zostały usunięte, w wyjściu można zobaczyć pozostałe trzy słowa z wyrażenia „Wyjazd do USA.„Użyliśmy czterech znaków pytań w powyższym wyjściu, ponieważ między tymi dwoma słowami jest przestrzeń, a przestrzenie są traktowane jako znaki w tym kontekście, więc w sumie usunięte znaki to cztery.

Przykład nr 2: Za pomocą wymiany parametrów Bash do usunięcia ostatnich znaków z ciągu.

W tej sekcji usuniemy ostatnie słowo z łańcucha, określając jego długość w Bash. Możemy zastosować operację „#”, aby określić długość ciągu. Aby to zrobić, musimy najpierw owinąć nazwę zmiennej w odwróconych przecinkach przed użyciem operacji „#”, aby określić długość ciągu. W związku z tym możemy określić długość zmiennej ciągów w UNIX za pomocą operatora „#”.

Teraz, w poleceniu, najpierw używamy utworzonej „zmiennej” i przekazujemy wartość łańcucha wewnątrz odwróconych przecinków, które „utrzymują”. W wartości są w sumie trzy słowa. Następnie w następnym wierszu przekazujemy parametr „długość” i przechowujemy argument „Zmienna”, w której wartość łańcucha jest przechowywana w nim, ale przed przekazaniem „zmiennej” musimy użyć „$” przed użyciem wsporników kręconych A wewnątrz tego wspornika musimy użyć operatora „#”.

Następnie, w poniższym wierszu, piszemy polecenie „Echo”, a następnie znak dolara ($), nawiasy kręcone, parametr „zmienna”, podwójna dwukropek („::”), długość argumentu i długość argumentu i The Argument i The Argument i The Argument i The Argument i The Liczba znaków, które musimy wymazać, czyli dwa i w postaci symbolu „-2”.

Linux@Linux: ~ $ varible = ”trzymaj to”
Linux@Linux: ~ $ długość = $ #zmienna#
Linux@Linux: ~ $ echo $ zmienna :: długość -2

Ponieważ zapewniliśmy długość postaci drugiej, więc wymazało ostatnie dwa znaki z łańcucha, a wyświetlane wyjście zawierało wartość ciągów „Zachowaj”.

Przykład nr 3: Wykorzystanie polecenia cięcia

W Bash polecenie Cut można użyć do usuwania niektórych słów lub znaków z ciągów lub plików. Użyjmy polecenia CUT, aby to zrobić. Najpierw wpisz „Echo”, a następnie użyj odwróconych przecinków, aby przekazać wartość łańcucha „Kocham moją matkę”, a następnie użyj tego symbolu paska „|”. Następnie wpisz „Cut”, a następnie użyj „-C”, aby wyciąć znak, a następnie podaj zakres znaków, który chcemy wyświetlić na wyjściu. W takim przypadku użyliśmy zakresu „1 do 10”, który wyświetli pierwsze dziesięć znaków z wartości łańcuchowej, przestrzenie są częścią znaków.

Linux@Linux: ~ $ echo „Kocham moją matkę” | Cut -C 1-10

Jak widać na poniższym obrazku, gdy uruchamiamy to polecenie, wyświetlało tylko początkowe znaki, w tym przestrzenie i pozostałe znaki, które są ostatnie, zostały usunięte. Wartości ciągów zawierających „Kocham moje” zostały wyświetlone w wyniku dostarczonego zakresu „1 do 10”.

Przykład nr 4: Korzystanie z polecenia SED

W tej sekcji użyjemy polecenia „SED”, aby wyeliminować ostatnie kilka znaków ciągu. Funkcja SED ma trzy główne aplikacje w skrypcie Bash: pisanie do stdout, wymazanie treści i zmiana konkretnego ciągu. Użyjemy tego samego polecenia, co w poprzednim przykładzie, ale tym razem wartość ciągu zostanie zmieniona na „Uwielbiam kodowanie” bez przestrzeni.

Następnie część po symbolu baru „|” zostanie zmienione, ponieważ ta część używa polecenia „SED”, więc wpisz „SED” w terminalu. Wreszcie, użyjemy pojedynczego odwróconego przecinka, a w środku używamy „s/.$/”. To wyeliminuje końcowe słowo łańcucha. Możesz także usunąć określony znak z łańcucha, zastępując go „$” w poleceniu, z którego chcesz usunąć znak.

Linux@Linux: ~ $ echo „ILoVeCoding” | sed 's/.$ // '

Znak „g” Ostatnia znak wartości została usunięta z wyjścia, która teraz pokazuje wartość ciągu „IloveCodin."

Wniosek

W tym artykule zbadaliśmy, jak używać bash, aby wyeliminować pojedynczy znak z linii i jak wyeliminować ostatnią literę z danego ciągu. Używając „%” i „?„Operatorzy, w pierwszym przykładzie wyeliminowaliśmy ostatnie słowo z łańcucha. W drugim przykładzie dostarczyliśmy długość znaków, które chcieliśmy wyeliminować z wartości ciągu w poleceniu. Następnie, w trzecim przykładzie, podaliśmy liczbę znaków, które chcieliśmy wyświetlić za pomocą polecenia „Cut” i usunęliśmy ostatnie słowa. Wreszcie w końcowej sekcji omówiliśmy funkcję „SED”.