BASH Bray Expansion

BASH Bray Expansion
Bash bruker stagutvidelse for å generere en sekvens av strenger fra terminalen eller ved å bruke et hvilket som helst Bash -skript. En sekvens av uttrykk eller komma-separert liste over data med krøllete parenteser brukes til å definere stagutvidelse. To valgfrie deler av stagutvidelse er ingress og Postscript. De ingress brukes til å legge til tekst foran på hver genererte streng og Postscript brukes til å legge til tekst på slutten av den genererte strengen ved å bruke utvidelse av stag. Hvordan brukeren kan lage forskjellige typer tilfeldige strenger ved hjelp av utvidelse av bashstang, forklares i denne opplæringen ved å bruke forskjellige eksempler.

Syntaks:

  1. Strengliste
String1, String2, ..., Stringn
  1. Rekkevidde
..
  1. Preamble og Postscript
streng eller rekkevidde
streng eller rekkevidde

Ovennevnte syntaks viser at du kan bruke stagutvidelse uten ingress og postscript eller med ingress eller med postscript eller med begge deler. Ulike bruksområder for utvidelser av stagene vises i neste del av denne opplæringen ved å bruke forskjellige eksempler.

Eksempel 1: Bruke komma-separerte lister

Følgende kommando viser bruk av stagutvidelse med kun komma-separert liste. Du må huske en ting mens du definerer listen. Det vil si at listeartikler må bare skilles med komma og ikke legge til noe mellomrom mellom varene, ellers vil ikke stagutvidelse fungere. Her vil den første kommandoen vise listeelementene med plass. To lister brukes i den andre kommandoen, og utdataene vil generere ved å kombinere hvert elementer i hver liste.

$ Echo PHP, JavaScript, jQuery
$ ekko "I Like", "Learn" "php", "programmering"

Produksjon:

Følgende utgang vises etter å ha kjørt skriptet. I den andre kommandoen er det to elementer i hver liste, og det er to lister. Så den andre kommandoen vil skrive ut (2x2 = 4), fire tekst som utgang.

Eksempel-2: Bruke områder

Ulike typer områder kan brukes i utvidelse av stag for å generere listen over data. Bruken av fire typer områder vises i dette eksemplet. Det første området vil lage en liste over numeriske data, fra 50 til 60. Det andre området vil generere en liste over alfabetiske tegn, fra A til F. Det tredje området vil generere en liste over nummer, fra 1 til 5 med ledende null. Forth-serien vil generere en liste over alfa-numeriske data ved å kombinere A til C og 1 til 3.

$ ekko 50… 60
$ ekko a… e
$ ekko 01… 05
$ ekko a… c 1… 3

Produksjon:

Følgende utgang vises etter å ha kjørt kommandoene ovenfor. I den siste kommandoen inneholder den første utvidelsen av stag. Så de totale elementene i utgangen vil være, 3x3 = 9.

Eksempel-3: Bruke ingress

Dette eksemplet viser bruk av ingress i utvidelse av stag. Den første kommandoen vil legge til strengen, “Hei” med hvert element på listen og genererer utgangen. Den andre kommandoen vil legge til 'B' med hvert element på listen. Denne typen oppgaver er gunstig hvis du vil legge til en felles tekst eller karakter foran hvert listeelement.

$ ekko "Hei" John, Mohammed, Lisa
$ ekko B alle, ell, havre, eef

Produksjon:

Følgende utgang vises etter å ha kjørt kommandoene.

Eksempel-4: Bruke Postscript

Dette eksemplet viser bruken av postscript i utvidelse av stag. Teksten, “Er en programmerer” vil legge til på slutten av hvert listeelement i den første kommandoen. Ordet "Ball" vil legge til med hvert element på listen i den andre kommandoen. Hvis den siste delen av hvert element på listen er det samme, er det bedre å opprette listen ved stagutvidelse med PostScript.

$ Echo John, Mohammed, Lisa "er programmerer.""
$ ekko kurv, fot, volley ball

Produksjon:

Følgende utgang vises etter å ha kjørt kommandoene.

Eksempel-5: Bruke både ingress og postscript

Når den første delen og den siste delen av hvert element på listen er den samme, så er det bedre å lage listen ved å bruke stagutvidelse med ingress og postscript. Her vil den første kommandoen legge til “Hei”, i begynnelsen av hvert listeelement og “Velkommen til Linuxhint.“På slutten av hver listeelement. Den andre kommandoen vil generere en alfa-numerisk liste ved å legge til "*****" foran og ".***** ”på slutten av listeelementet. I følge serien er det første elementet Q01 og det siste elementet er Q05.

$ ekko "Hei," John, Mohammed, Lisa "Velkommen til Linuxhint.""
$ ekko "***** q" 01 ... 05 ".***** "

Produksjon:

Følgende utgang vises etter å ha kjørt kommandoene.

Eksempel-6: Opprette sekvens av katalog og fil

'ekko' Kommando brukes i alle tidligere eksempler på denne opplæringen. Men du kan bruke utvidelse av stag med andre kommandoer også. Hvordan du kan opprette flere filer eller mapper i en enkelt kommando ved å bruke Brace Expansion vises i denne opplæringen. Følgende kommando vil opprette tre mapper, Design, programmering og rammeverk, ved bruk av 'mkdir'Kommando- og stagutvidelse.

$ mkdir design, programmering, rammeverk
$ ls

Produksjon:

Følgende utgang vises etter å ha kjørt kommandoene.

Du kan også opprette sekvensielle flere filer ved å bruke Touch and Brace -utvidelse med ingress og postscript. I dette eksemplet, 'ta på' Kommando brukes til å lage flere filer. “PS” brukes som ingress, “.py ” brukes som postscript og 1. 3 rekkevidde brukes til å lage sekvensielle filnavn. Den andre kommandoen, 'ls' vil vise at filene er opprettet eller ikke.

$ Touch “PS” 1… 3 ”.py ”
$ ls

Produksjon:

Følgende utgang vises etter å ha kjørt kommandoene. Her blir det opprettet tre filer. Disse er PS1.PY, PS2.PY og PS3.py.

Konklusjon

Stagutvidelse er veldig nyttig for å generere en liste over sekvensielle data eller kjøre hvilken som helst kommando på sekvens av data. Noen vanlige bruksområder for utvidelse av stagene vises i denne opplæringen. Håper, leseren vil kunne bruke stagutvidelse riktig etter å ha praktisert eksemplene på denne opplæringen.