Was ist ein Parameter in Linux Shell Skripten?

...komplette Frage anzeigen

5 Antworten

Genau genommen sind die bisherigen Antworten leider nicht ganz richtig, da viele Leute "Parameter" als Synonym für "Argument" sehen, was leider nicht stimmt.

Parameter sind Platzhalter, die bei einem Aufruf mit konkreten Werten, also Argumenten, befüllt werden.

Beispielskript (greet.sh):

#!/bin/sh

echo "Hallo, $1!"

Aufruf:

$ ./greet.sh Welt

In diesem Falle ist $1 der Parameter und "Welt" das Argument.

Aber der Unterschied ist meistens kosmetischer Natur, es sei denn du beschäftigst dich mit "Reference Collapsing" von C++ oder ähnlichem.

Wenn du also ein gängiges Kommando mit z. B. ...

ls -ltrh

... aufrufst, dann ist "-ltrh" das Argument, und die Variable im Quelltext von "ls", welche (unter anderem) dieses Argument entgegen nimmt, der Parameter.

(l, t, r und h sind wiederum sog. Flags, die in einem einzigen Argument mit vorangestelltem Minus-Zeichen zusammengefasst wurden ... aber das ist wieder ein anderes Thema ...)

Lustigerweise heißt dieser Parameter seit jeher meistens "argv", obwohl eigentlich "prmv" angebrachter wäre. Genauso sieht man oft "args" als Bezeichner für etwas, wo eigentlich "params" geeigneter wäre.

Ich glaube, "Parameter" und "Argument" werden noch häufiger verwechselt als "Deklaration" und "Definition". :)

Naja, schönen Tag noch! :)

Programme, auch ein Shell-Script ist ein  Programm, benötigen z.B. Dateinamen, mit denen etwas machen.

Das ist eine Form von Parametern.

Hinzu kommen Schalter, die dem Programm "sagen", wie es z.B. Daten ausgeben soll.

Auch wenn ls kein Script ist, so steuert man mit l = Langform die Anzeige.

ls  -l zeigt mehr als nur ls  an.

als -la dann noch mehr.

Das Minus ist zur Unterscheidung von Dateinamen notwendig.

Auch Scripte können solche Schalter auswerten,wenn das der Programmierer wollte.

Es gibt Pflicht-Parameter und auch optionale.

Parameter sind die Dinger, die hinter dem Befehl nach nem '-' meist stehen, bei ls -la oder pacman -Syu sind l und a bzw. S, y und u die Parameter.

Und keiner von euch kam auf die Idee, den Lehrer (oder wen auch immer) zu fragen und nicht bis kurz vor der Prüfung zu warten?
Außerdem scheint keiner in der Lage zu sein, Google zu benutzen?
https://de.wikipedia.org/wiki/Parameter_(Informatik)

Lies dir das durch und wenn du etwas nicht verstehst, stell eine gezielte Frage. Allgemeine Definitionen und Erklärungen gibt es im Internet wie Sand am Meer

Parameter ist alles, was nach dem eigentlichen Programm- / Scriptaufruf kommt.

Was möchtest Du wissen?