Sida 1 av 1

BASH: if $1 = "*inget*" then; .... [LÖST]

Postat: 10 aug 2008, 14:01
av Emil.s
Håller på att scripta ihop ett litet alltiallo script som jag tänkte använda för att göra livet lättare...

Dock så skulle jag vilka ha en liten snabb infosida som visas om man inte matar in något till scriptet.

Alltså:
emil@Megaleif: ~ $> man
What manual page do you want?

Hur gör jag?

Re: BASH: if $1 = "*inget*" then; ....

Postat: 10 aug 2008, 14:10
av Konservburk

Kod: Markera allt

if test $# -eq 0
then
   echo vad du vill
fi

Re: BASH: if $1 = "*inget*" then; ....

Postat: 10 aug 2008, 14:27
av Konservburk
...men om du nödvändigtvis vill använda $1 så blir det så här istället:

Kod: Markera allt

if ${1+false}
then
   echo vad du vill
fi

Re: BASH: if $1 = "*inget*" then; ....

Postat: 10 aug 2008, 14:29
av Emil.s
Konservburk skrev:

Kod: Markera allt

if test $# -eq 0
then
   echo vad du vill
fi
Tackar!

Måste dock fråga, vad har brädgården (#) efter $ för funktion?

Re: BASH: if $1 = "*inget*" then; ....

Postat: 10 aug 2008, 14:32
av Konservburk
Emil.s skrev:Måste dock fråga, vad har brädgården (#) efter $ för funktion?
$# talar om hur många parametar som skickats till skriptet, dvs 0 om du inte skickar med någonting.

Re: BASH: if $1 = "*inget*" then; ....

Postat: 10 aug 2008, 14:46
av Emil.s
Konservburk skrev:
Emil.s skrev:Måste dock fråga, vad har brädgården (#) efter $ för funktion?
$# talar om hur många parametar som skickats till skriptet, dvs 0 om du inte skickar med någonting.
Ah, då har man lärt sig ytterligare något nytt igen då. Tack igen! :)