Pushd
Erscheinungsbild
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