Hvordan passere et filnavn som argument i et skallskript

Hvordan passere et filnavn som argument i et skallskript

Shell -programmeringsspråk kan brukes til en rekke oppgaver som å utføre operasjoner og utføre repeterende oppgaver for bilindustrien. Vi kan utføre våre kommandoer, applikasjoner og skallskript i et skallmiljø. Du gir innspill og programmet blir deretter utført ved hjelp av den inngangen. Utgangen til et program vises når det er fullført. Hvordan oppgi et filnavn som inngang til et skallskript blir adressert i denne artikkelen. For å oppnå dette, må det opprettes et skript ved hjelp av “#!/bin/bash ”Shell. Nå får vi se hvordan du gjør dette trinn for trinn.

Passering av filnavnet som et argument i et skallskript

Et program som bare analyserer noen få filer som kan være verdifulle som en logg over handlingene dine. Men et program som behandler hva filer du velger er mer fordelaktig. For å demonstrere dette kan den "$" spesielle begrepet som står for all kontroll av de gitte parametrene til skriptet brukes. Et skallskript er vanligvis laget for funksjonsserier som en person krever å bruke ofte for å lagre innsatsen. Ved å bare skrive dokumentet på kommandolinjen, kan brukerne starte serien med kommandoer som er inneholdt i Shell -skriptet.

Kommandoen i dette trinnet får nå filnavnet som inndata. Her er skriptet vårt allerede plassert på skrivebordet. Derfor krever å få skrivebordets katalog å skrive "c Desktop/" før vi kan skrive kommandoen for å gi filnavnet som et argument i Shell -skriptet.

Linux@linux: ~ $ cd desktop/


Deretter åpner vi i det følgende trinnet skriptet fra skrivebordet fordi vi allerede vet at å legge til skallet er nødvendig for bash shell scripting. For å gjøre dette, skriv “#!/bin/bash ”. Da bruker vi i neste linje "Echo" -kommandoen. Echo -kommandoen brukes i bash shell scripting for å skrive ut utsagnene. Vi bruker de omvendte kommaene og skriver "navnet på filen" inne i den. Deretter bruker vi Echo -kommandoen på følgende linje igjen og leverer argumentet, denne gangen er "$ 1" for å skrive ut. Det første kontrollargumentet som sendes til skallskriptet er $ 1. Et annet navn for dem er posisjonsvariabler. I hovedsak innebærer dette at filnavnet som vi skriver inn i ledeteksten som et argument lagres i denne "$ 1" -variabelen.

#!/ bin/ bash
ekko "Navnet på filen er"
ekko $ 1


Nå bruker vi kommandoen for å gi filnavnet som et argument. For å gjøre dette, bruker vi kommandoen der vi først skriver prikk -slashen “./”. Deretter skriver vi navnet på skriptet som er “Shellscript.sh ”. Vi passerer da argumentet som er navnet på filen som vi sender hit og lagrer “Hei.SH ”i“ $ 1 ” . Vi må også legge til "SH" -utvidelsen til argumentet.

Linux@linux: ~/desktop $ ./Shellscript.sh Hei.sh


Når vi utfører denne kommandoen, viser den uttalelsen om "navnet på filen er" på terminalen. I neste linje viser den også filnavnet “Hei.SH ”som leveres som et argument.


Nå, i det følgende avsnittet, bruker vi "bash" nøkkelordet i kommandoen for å gi filen som et argument. For dette bruker vi kommandoen der vi først skriver "bash". Deretter skriver vi navnet på skriptet som er “Shellscript.sh ”før du passerer“ hei.SH ”-argumentet som er lagret i parameteren“ $ 1 ”.

Linux@linux: ~/desktop $ bash shellscript.sh Hei.sh


Så som du kan se, den viste utdata på terminalen etter at denne kommandoen er utført. Det er identisk med det som ble vist i forrige illustrasjon.

Passerer flere filnavn som argumenter for å skallede skript

I dette avsnittet passerer vi flere filnavn som argumenter i skriptet. For å gjøre dette, skriver vi først skriptet, og legger til skallet med “#!/bin/bash ”-kommando før du bruker Echo -kommandoen for å sende en uttalelse. Før vi har gitt uttalelsen, må vi imidlertid bruke de omvendte kommaene. Inne i disse omvendte kommaene passerer vi "flere filer er" -uttalelsen. Deretter skriver vi "ekko". Inne i dette passerer vi parametrene. Denne parameteren lagrer verdiene vi oppgir som filnavnet som et argument i terminalen.

#!/ bin/ bash
ekko "Flere filer er"
ekko $ 1 $ 2 $ 3 $ 4


Vi oppgir nå kommandoen for å åpne skriptet på terminalen og legge til filnavnene som argumenter. For å begynne, skriver vi først ”./”Etterfulgt av navnet på skriptet som er“ Shellscript.sh, ”og fire argumenter. Det første argumentet er “Hallo.SH ”som er lagret i“ $ 1 ”. Det andre argumentet er “Emma.SH ”som er lagret i“ $ 2.”Det tredje navnet,“ Smith.SH ”, er lagret for $ 3. Og det fjerde navnet som er “Alex.SH ”er tilgjengelig for $ 4.

Linux@linux: ~/desktop $ ./Shellscript.sh Hei.SH, Emma.SH, Smith.Sh Alex.sh


Etter å ha utført denne kommandoen, viser den først uttalelsen om "flere filer er" etterfulgt av navnene på filene som vi passerer som argumenter. Den første linjen viser “Hei.sh ”. Den andre linjen viser “Emma.sh ”. Den tredje linjen viser “Smith.sh ”. Og den fjerde linjen viser “Alex.sh.”


Nå, i følgende avsnitt, kjører vi denne kommandoen ved hjelp av "bash" -tnøkkelordet. Det gir de samme resultatene som for de som vises i forrige bilde. Så for dette skriver vi "bash". Deretter skriver vi “Shellscript.sh ”. Følg deretter de samme trinnene som vi utførte med forrige funksjon.

Linux@linux: ~/desktop $ bash shellscript.sh Hei.SH, Emma.SH, Smith.Sh Alex.sh


Derfor, når vi kjører denne kommandoen, gir den de samme resultatene som når vi kjører kommandoen før den hvor "./Shellscript.sh ”brukes.

Shell -skript som tar den gjeldende filen som et argument

I denne delen passerer vi gjeldende filnavn, “Shellscript.sh ”, som et argument. For dette bruker vi skriptet der vi legger til skallet som vi gjorde i forrige avsnitt. Deretter bruker vi “Echo” -kommandoen og passerer “den gjeldende filen” -uttalelsen i neste linje. Til slutt passerer vi parameteren “$ 0” inne i “Echo” som lagrer det faktiske navnet på skriptene.

#!/ bin/ bash
ekko "den gjeldende filen er"
ekko $ 0


For øyeblikket skriver vi “bash” etterfulgt av navnet på skriptet som er “Shellscript.SH ”på terminalen for å vise utdataene i terminalvinduet.

Linux@linux: ~/desktop $ bash shellscript.sh


Som du kan se i følgende bilde, etter å ha kjørt denne kommandoen, deles utgangen i to linjer. Den første av dem har "den nåværende filen" ekko -setningen. Det andre inkluderer navnet på skriptet som vi ga som et filnavn som er “Shellscript.sh ”.

Konklusjon

Vi dekket hvordan du kan gi et filnavn som et argument i Linux Shell -skripting i denne artikkelen. I denne artikkelen brukte vi en rekke metoder for å passere filnavnet. Vi undersøkte hvordan du passerer et enkelt filnavn som en inndata i den første delen og hvordan du lagrer det i parameteren “$ 1”. I den andre delen viste vi hvordan vi bruker parametrene i skriptet for å passere flere filnavn som argumenter. I den tredje linjen demonstrerte vi hvordan vi bruker parameteren “$ 0” for å passere gjeldende filnavn som inngang. I kommandoen for å åpne skriptet på terminalen, brukte vi også "bash" -begrepet.