Pushd: Unterschied zwischen den Versionen
Erscheinungsbild
K Dirkwagner verschob die Seite Linux:Shell:Bash:Builtin:pushd nach Bash:Builtin:pushd, ohne dabei eine Weiterleitung anzulegen: Textersetzung - „Linux:Shell:“ durch „“ |
K Textersetzung - „«“ durch „''“ |
||
(9 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 2: | Zeile 2: | ||
Mit dem Kommando kann in ein angegebenes Verzeichnis gewechselt werden, wobei das Verzeichnis auf einem Stack abgelegt wird. | Mit dem Kommando kann in ein angegebenes Verzeichnis gewechselt werden, wobei das Verzeichnis auf einem Stack abgelegt wird. | ||
Mit | Mit ''-n'' wird der Verzeichniswechsel verhindert, der Name des Verzeichnisses aber dennoch gespeichert. Dieser Stack kann rotiert werden, mit ''-Anzahl'' wird vom Ende des Stacks aus rotiert; mit ''+Anzahl'' vom Anfang. | ||
Das nachfolgende Beispiel zählt alle Unterverzeichnisse ausgehend vom Startverzeichnis, wobei popd und pushd Verwendung finden: | Das nachfolgende Beispiel zählt alle Unterverzeichnisse ausgehend vom Startverzeichnis, wobei popd und pushd Verwendung finden: | ||
Zeile 19: | Zeile 19: | ||
echo Anzahl: $number | echo Anzahl: $number | ||
[[ | [[Kategorie:Bash/Builtin]] |
Aktuelle Version vom 31. März 2025, 12:22 Uhr
pushd
Mit dem Kommando kann in ein angegebenes Verzeichnis gewechselt werden, wobei das Verzeichnis auf einem Stack abgelegt wird.
Mit -n wird der Verzeichniswechsel verhindert, der Name des Verzeichnisses aber dennoch gespeichert. Dieser Stack kann rotiert werden, mit -Anzahl wird vom Ende des Stacks aus rotiert; mit +Anzahl vom Anfang.
Das nachfolgende Beispiel zählt alle Unterverzeichnisse ausgehend vom Startverzeichnis, wobei popd und pushd Verwendung finden:
'$ cat countdir' #!/bin/sh while :; do for i in $(ls); do test -d $i || continue pushd -n $(pwd)/$i &>/dev/null number=$(($number+1)) done popd &>/dev/null && continue break done echo Anzahl: $number