Hvordan sjekke eksistensen av input-argument i et Bash Shell-skript

Hvordan Sjekke Eksistensen Av Input Argument I Et Bash Shell Skript



Bash shell scripting er et kraftig verktøy for å automatisere repeterende oppgaver og utføre komplekse operasjoner på kommandolinjen. Et av de grunnleggende konseptene i shell-scripting er å akseptere input-argumenter fra brukeren eller fra andre skript. Når du arbeider med input-argumenter, er det viktig å sjekke om input-argumentet eksisterer eller ikke for å unngå uventet oppførsel i skriptet. Denne artikkelen vil diskutere forskjellige måter å kontrollere eksistensen av input-argumenter i et Bash-shell-skript.

Hvordan sjekke eksistensen av input-argument i et Bash Shell-skript

Det er tre forskjellige måter:

  1. Bruke 'test'-kommandoen
  2. Ved å bruke '$#'-variabelen
  3. Bruk '-n' alternativet

Metode 1: Bruke 'test'-kommandoen

'test'-kommandoen, også kjent som '['-kommandoen, er en innebygd kommando i Bash som tester for ulike forhold. En av betingelsene som vi kan teste ved å bruke 'test'-kommandoen er om en variabel eksisterer eller ikke. Her er en eksempelkode for å sjekke om et input-argument eksisterer ved å bruke 'test'-kommandoen:







#!/bin/bash

hvis [ -Med «$1» ]

deretter

ekko 'Input-argument mangler.'

exit 1

være

ekko 'Input-argument finnes.'

Her brukes '-z'-alternativet med 'test'-kommandoen for å sjekke om input-argumentet er en tom streng eller ikke. Skriptet vil sende ut en feilmelding og avsluttes med en statuskode på 1 hvis input-argumentet er en tom streng. Ellers vil skriptet fortsette å kjøre, nedenfor har jeg gitt og lagt inn argument for koden, slik at den viser meldingen om eksistensen av input av argument:





Metode 2: Bruke '$#'-variabelen

De «$#» variabel lagrer antall input-argumenter som sendes til et skript. Hvis skriptet forventer minst ett input-argument, kan vi sjekke om «$#» variabelen er større enn null. Her er en eksempelkode for å sjekke om det finnes minst ett inngangsargument ved å bruke «$#» variabel:





#!/bin/bash

hvis [ $# -eq 0 ]

deretter

ekko 'Input-argument mangler.'

exit 1

være

ekko 'Input-argument finnes.'

Her er '-eq' operatør brukes til å sjekke om «$#» variabelen er lik null eller ikke, og hvis '$#'-variabelen er lik null, vil skriptet vise en feilmelding og avsluttes med en statuskode på 1. Ellers vil skriptet fortsette å kjøre, nedenfor har jeg gitt og skrevet inn argument for koden slik at den viser meldingen om eksistensen av input til argument:



Metode 3: Bruk '-n' alternativet

De '-n' alternativet brukes til å sjekke om en variabel ikke er tom. Vi kan bruke dette alternativet til å sjekke om input-argumentet eksisterer eller ikke. Nedenfor har jeg gitt en eksempelkode som sjekker om et input-argument eksisterer ved å bruke '-n' alternativ:

#!/bin/bash

hvis [ -n «$1» ]

deretter

ekko 'Input-argument finnes.'

ellers

ekko 'Input-argument mangler.'

exit 1

være

Her, den '-n' alternativet brukes til å sjekke om input-argumentet ikke er tomt, og hvis input-argumentet ikke er tomt, vil skriptet vise en suksessmelding. Ellers vil skriptet vise en feilmelding og avslutte med en statuskode på 1, nedenfor har jeg gitt og lagt inn argument for koden slik at det viser meldingen om eksistensen av input av argument:

Konklusjon

Ved shell-scripting er det å sjekke eksistensen av input-argumenter et viktig skritt for å sikre at skriptet kjører som forventet. Vi kan bruke forskjellige teknikker for å sjekke eksistensen av input-argumenter, for eksempel å bruke 'test'-kommandoen, '$#'-variabelen eller '-n'-alternativet. Ved å implementere disse teknikkene lager vi mer robuste og pålitelige shell-skript som kan håndtere input-argumenter.