Argument passing (Bash)

Uit De Vliegende Brigade
Naar navigatie springen Naar zoeken springen

Voorbeeld van een script, genaamd argtest

#!/bin/bash

name=$1
echo $name

Aanroep:

./argtest blub

Uitvoer:

blub

Een invoer-argument is niet verplicht. Dus het script hierboven kun je ook prima zonder argument aanroepen.

Test voor null-waardes:

###################################################################################
# Input-variabelen
###################################################################################
#
# Dit script is een universele routine. Daarom werkt het met input-argumenten!
#
domeinnaam=$1
mapalias=$2

# Verificatie
#######################################
#
if [ -z "$domeinnaam" ]; then
	echo "Geen domeinnaam gegeven"
	exit
fi	

if [ -z "$mapalias" ]; then
	echo "Geen mapalias gegeven"
	exit
fi	

Bestandsnaam

En nu een leuke truuk: Variabele $0 bevat de naam van het bestand zelf (dus het bestand dat zonet is aangeroepen). Om de naam van het bestand bv. te vermelden aan het begin bij het executeren van een script:

#!/bin/bash
#
# Main file
################################################################################
#
#
################################################################################
# Hello!
################################################################################
#
echo ""
echo ""
echo "################################################################################"
echo "### $0"
echo "################################################################################"
echo ""