Benutzereingaben

  • read <variablen_name> -> Wartet auf Input des Users und speichert diesen in einer Variable namens <variablen_name>
  • read -p <string> <variablen_name> -> Wie oben, aber mit einem String als Prompt
  • read -sp <string> <variablen_name> -> Wie oben, nur das die Eingabe unsichtbar ist -> Für Passwörter
    => Es können auch mehrere Variablennamen hintereinander angegeben werden. Der String, der rauskommt, wird dann an $IFS gesplitted und entsprechend den Variablen zugewiesen
  • Die internen Variablen $1 $2 $3 ... repräsentieren die Argumente, die einem Script gegeben werden können

Die IFS Variable

$IFS -> Internal Field Separator

  • Standardmäßig <space><tab><newline> -> Splitted also an Spaces, Tabs und Newlines
  • Kann einfach neu assigned werden, um an verschiedenen Stellen zu splitten
  • { IFS=. read -r a b c d; } <<< "${str}" (Spaces und Semikolon wichtig!)
  • Wenn zum Beispiel eine IP angegeben wird, wird diese an . gesplitted und in die Variablen a, b, c und d eingefügt.
    Danach wird der IFS wieder zurückgesetzt