Hvordan sjekke eksistensen av input-argument i et Bash Shell-skript
Det er tre forskjellige måter:
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/bashhvis [ -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.