Shelldap
A handy shell-like interface for browsing LDAP servers and editing their content. It keeps command history, has sane autocompletes, credential caching, site-wide and individual configs, and it's fun to say. Shelldap! Shelldap! Shelldap!
Witness!
% shelldap ~ > [ tab ] ~ > cat clear cp delete env grep id ls move passwd read search touch whoami cd copy create edit exit help list mkdir mv pwd rm setenv vi ~ > cd ou=People ou=People,~ > cat uid=ma[ tab ] ou=People,~ > cat uid=mahlon dn: uid=mahlon,ou=People,dc=laika,dc=com objectClass: inetOrgPerson objectClass: organizationalPerson objectClass: person objectClass: top objectClass: posixAccount objectClass: shadowAccount objectClass: apple-user cn: Mahlon E. Smith departmentNumber: Technology - IT displayName: Mahlon gecos: Mahlon E. Smith gidNumber: 200 givenName: Mahlon homeDirectory: /home/m/mahlon l: Ghetto loginShell: /bin/tcsh mail: mahlon@martini.nu mobile: 1+8829999005747 sn: Smith title: Manager, Information Systems uid: mahlon uidNumber: 20933 userPassword: * ou=People,~ >
Downloads
You can download the latest script here.
It is also available via the FreeBSD ports system, OS X via macports, Debian/Ubuntu via apt, NetBSD's pkgsrc, OpenBSD ports, and openSUSE's Build Service.
Many thanks to the maintainers of these packages.
Installation
Shelldap is simply a perl script. Put it into a convenient place of your choosing.
Shelldap requires the following perl modules to function properly:
- YAML::Syck
- Term::Shell
- Digest::MD5
- Net::LDAP
- Algorithm::Diff
Development
You can also check out the source via Mercurial from the following uri:
% hg clone http://code.martini.nu/shelldap/
Documentation
Once installed, Shelldap is fully documented via perldoc, and has a built-in help command as well.
