A while back I posted some Confluence pages about writing a command line yet interactive
LDAP client called LDAP shell.  I never really got any comments about it.  I just thought
it might be worth while putting out the idea again on this email channel.

The concept is simple and one that everyone on the command line is pretty much used to.
A shell.  Users log into an LDAP server and have a command prompt where they can:

 o CD into any ldap context using relative or absolute distinguished names
 o LS within a server entry to list it's children if any (use -R to change scope :))
 o CAT to print the contents of an entry to the console
 o LESS to pan through contents
 o VI, ED to edit the contents and save
 o PUSHD to push a DN onto the stack
 o POPD to pop a DN off of the stack and CD into it
 o MV to modifyDn on an entry
 o CP to copy an entry

Yep all the shell built-ins you're used to in bourne or bourne again shells should be there.  The
only difference in the commands are that they apply to a different naming system than the UNIX
file system path syntax. 

The idea here is to enable LDAP scripting for those who already know how to script in shells. 
Furthermore these deterministic scripts can be transformed into code that can be pushed into
the server as stored procedures. 

Also Directory Studio can use this as an LDAP console.  You don't need to just be in a shell
to utilize this neat little client.  Studio's browser can select nodes in the tree to represent
the path of working directory ($PWD).  As the user navigates through the LDAP shell Studio's
browser can give them cues on their position and where they can go. Drag and drop can be
used to move nodes in the browser into the shell which will list the DN of the node dropped in.
Selected a node in the browser can automatically CD users into that entry.

Is this a crazy idea? Thoughts?