Flaggor i bash
av
2010-03-12 klockan 18:35 (359 Visningar)
Idag fick jag förklarat för mig hur man kan skapa flaggor för ett bash script.
På det här sättet tvingar man användaren att använda flaggor.
Ett script funkar oftast så att man skriver sh scriptnamn -flagga -alternativ -alternativ2 -sökväg
Bash ser dessa som kolumner $0(scriptnamn) $1(flagga) $2(alternativ) $3(alternativ2) $(sökväg)
Ett enkelt program kan se ut så här:
om man kör scriptet med flaggan -h returnerar scriptet "Hello World!"#!/bin/bash
if [ $1 = "-h" ]; then
echo "Hello World!"
elif [ $1 = "-b" ]; then
echo "Bye World!"
else
echo "Du måste använda flaggorna -h eller -b"
fi
väljer man att använda flaggan -b returneras istället "Bye World!"
Om man inte väljer någon flagga kommer en liten hjälpsida upp som talar om att vi måste använda flaggorna h eller b.
Om vi vill ha med ett andra alternativ ska vi använda oss av kolumn $2.
För att två värden ska stämma överens ska vi använda oss utav &&.
En fungerande rad ser ut såhär:
Men om man hellre vill använda sig av eller om jag hellre vill använda -h eller --hello-world[...]
if [ $1 = "-b" ] && [ $2 = "-h" ]; then
[...]
så får man skriva:
Säkert finns det många bättre och mer korrekta lösningar men, "If it works, don't fix it"
Kommentarer
Trackbacks
Totalt antal trackbacks 0
Trackback-URL:








E-posta blogginlägg
