Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Hi @all,

kann mir mal jeman erklären, was das SHIFT genau macht ???

Ich hab das noch nicht so ganz vertsanden ...

Hallo,

Um auf die Argumente eines Shell-Skriptes zugreifen zu können, kannst Du mit $0, $1 ... $9 usw. arbeiten ($0 ist der Name des Skriptes). Dies funktioniert allerdings nur bis $9, möchtest Du auf ein weiteres Argument zugreifen, so kannst Du mit SHIFT arbeiten. "shift 1" verschiebt die Argumente um eins nach links, d.h. $1 wird zu $2, $2 zu $3 usw. Dies erlaubt Dir, mehr als neun Argumente zu verarbeiten.

Nic

Achso, jetzt verstehe ich ... :D

Aber wieso wird in diesem Skript einen SHIFT benutzt ...

if [ "$1" == "-t" ] ; then

  test="yes"

  [COLOR=red]shift 2[/COLOR]

fi


while [[ $1 == -* ]]

do

  case "$1" in

     -u)   uid="$2"      ;;

     -g)   gid="$2"   ;;

     -G)   sgids="$2"  ;;

     -d)   home="$2"     ;;

     -c)   com="$2"     ;;

     -s)   shell="$2"    ;;

     -k)   profdir="$2"  ;;

      *)   echo "Optionen: -ugGdcsk (man useradd)" && exit 1 ;;

  esac

  [COLOR=red]shift 2[/COLOR]

done

Noch eine frage:

Wie ist das eigentlich, wenn ich jetzt zum Beispiel folgedes weg lasse, kann ich dann in der while Schleife, das shif2 lassen ?

if [ "$1" == "-t" ] ; then

  test="yes"

  [COLOR=red]shift 2[/COLOR]

fi

Es werden immer die Parameter beim Aufruf um 2 Positionen (Pos.1:)-(BUCHSTABE) (Pos.2:) PARAMETER nach links rausgeshiftet (geschoben) und die nächsten 2 liegen an falls man mehrere hat.

Bei der 2. Frage solltest Du nur um 1 shiften und wenigstens einen Abbruchparameter einbauen (dazu war die while-Schleife auch da).

achso ... jetzt habe ich das verstanden, klar ... wenn die while schleife nicht da wär, dann bricht er ja sofort ab ...

Danke für die hilfe :bimei

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.