Hallo!
Erste Frage: Benutzt jemand pushd/popd/dirs? Ich kenne die Kommandos seit langem, konnte mich jedoch nie daran gewöhnen.
Gerade kam mir die Idee, die Directory-Liste nicht als Stack sondern als Hash zu speichern.
Beispiel:
==guettli@sonne:~$ p home Das Programm "p": Das aktuelle Verzeichnis wird unter dem Namen "home" speichern
==guettli@sonne:/tmp$ c home Wechselt wieder zu dem unter "home" gespeicherten Verzeichnis.
==guettli@sonne:~$ l home --> /home/guettli o --> /home/guettli/sourceforge/oopserver/src ...
Das Programm listet die gespeicherten Verzeichnisse.
Ich glaube, ich werde mal wieder etwas C programmieren....
Was haltet ihr davon? Gibt es schon etwas ähnliches?
thomas
On Wed, 19 Feb 2003 18:54:37 +0100, Thomas Guettler wrote:
==guettli@sonne:~$ p home Das Programm "p": Das aktuelle Verzeichnis wird unter dem Namen "home" speichern
==guettli@sonne:/tmp$ c home Wechselt wieder zu dem unter "home" gespeicherten Verzeichnis.
==guettli@sonne:~$ l home --> /home/guettli o --> /home/guettli/sourceforge/oopserver/src ...
Das Programm listet die gespeicherten Verzeichnisse.
Ich glaube, ich werde mal wieder etwas C programmieren....
Was haltet ihr davon? Gibt es schon etwas ähnliches?
fast hack für die bash:
function dpush() { eval dlist_$1="$PWD" } function dpop { eval tmp="${dlist_$1}" if [ -z $tmp ]; then echo $1 habsch ni im Kopp 1>&2; else cd $tmp; fi } function dlist() { set|grep ^dlist_|sed s/^dlist_// }
Screenshot:
rf11@tpad:~> dlist rf11@tpad:~> dpush home rf11@tpad:~> dlist home=/home/rf11 rf11@tpad:~> cd /usr/src /usr/src rf11@tpad:/usr/src> dpush src rf11@tpad:/usr/src> dlist home=/home/rf11 src=/usr/src rf11@tpad:/usr/src> dpop home /home/rf11 rf11@tpad:~> dpop src /usr/src rf11@tpad:/usr/src> dpop blubb blubb habsch ni im Kopp rf11@tpad:/usr/src>
Reinhard
On Wed, 19 Feb 2003 21:07:09 +0100, Reinhard Foerster wrote:
Noch ein paar Quotes, damit es auch mit den Leerzeichen klappt:
function dpush() { eval dlist_$1="$PWD" } function dpop { eval tmp="${dlist_$1}" if [ -z "$tmp" ]; then echo $1 habsch ni im Kopp 1>&2; else cd "$tmp"; fi function dlist() { set|grep ^dlist_|sed s/^dlist_// }
Newlines u.ä. sind verboten. Ansonsten ist es IMO so verwendbar. Fehlen nur noch ordentliche kurze Namen.
Reinhard
On Wed, Feb 19, 2003 at 09:54:05PM +0100, Reinhard Foerster wrote:
On Wed, 19 Feb 2003 21:07:09 +0100, Reinhard Foerster wrote:
Noch ein paar Quotes, damit es auch mit den Leerzeichen klappt:
function dpush() { eval dlist_$1="$PWD" } function dpop { eval tmp="${dlist_$1}" if [ -z "$tmp" ]; then echo $1 habsch ni im Kopp 1>&2; else cd "$tmp"; fi
} #fehlte
function dlist() { set|grep ^dlist_|sed s/^dlist_// }
Newlines u.ä. sind verboten. Ansonsten ist es IMO so verwendbar. Fehlen nur noch ordentliche kurze Namen.
Feine Sache! Habe es gleich in meine .bashrc übernommen.
Danke und Gruß,
thomas
lug-dd@mailman.schlittermann.de