ZSH for Windows|
chdir for DOS and Unix, w/C src
Wcd is a command-line program to change directory fast. It saves time typing at the
keyboard. One needs to type only a part of a directory name and wcd will
jump to it. Wcd has a fast selection method in case of multiple matches and
allows aliasing and banning of directories. Wcd also includes a full screen
interactive directory tree browser with speed search.
Wcd was modeled after Norton Change Directory (NCD).
NCD appeared first in The Norton Utilities,
Release 4, for DOS in 1987, published by Peter Norton.
NCD was written by Brad Kingsbury.
Examples of wcd usage:
will change to directory /home/waterlan/Desktop
will do that.
Wcd is free to use and you can get the source code too.
Features of wcd:
Full screen interactive directory browser with speed search and zoom in/out.
Present the user a list in case of multiple matches.
Wildcards *, ? and [SET] supported.
Directory stack, push pop.
Subdir definition possible. E.g. wcd subdira/subdirb
Long directory names support in Win95/98/NT DOS-box
Windows LAN UNC paths supported.
Change drive and directory at once.
Alternate stack per shell or terminal.
Multi user: Jump to folders of your colleagues.
Native language support:
Chinese simplified, Dutch, English, Esperanto, Finnish, German, Spanish, Ukrainian, Vietnamese.
Unicode Level 3 support (all UCS characters including double width and combining characters).
- DOS 16 bit, DOS 32 bit, DOS bash
- Windows Command Prompt, Windows PowerShell, WinZsh, MSYS, Cygwin
- Unix/Linux: all Bourne and C type shells.
- OS/2 Warp
Option to ignore diacritics for Latin-based scripts.
- Windows PowerShell.
- Windows Command Prompt (cmd.exe) on Windows 7 and up.
- Unicode matching with normalization (compatible equivalence).
WCD is free software, distributed under GNU General Public License, version 2.
View the README
How to install wcd on DOS, Windows, or OS/2.
How to build wcd for DOS, Windows, or OS/2 with GCC.
How to build wcd for DOS, Windows, or OS/2 with Watcom C.
How to build wcd for Windows with Microsoft Visual C.
How to build and install wcd on Unix/Linux/Cygwin.
How to open wcd best match directory in Windows Explorer.
Latest version: 5.3.2-beta2 Jan 29 2016
Latest stable version: 5.3.1 Dec 2 2015
For previous releases see: Old versions of wcd
TIP: DOS/Windows with PDCurses interface: Set environment variable PDC_RESTORE_SCREEN so that the
screen will be restored after wcd exits. Add this to your autoexec.bat file:
Binaries of wcd for other platforms are welcome. Send them by e-mail to
- DOS / Windows 95/98/ME
- 16 bit Real Mode (Without Native Language Support)
- 32 bit Protected Mode
A fast 32 bit DOS version which supports long
directory names in a Windows 95/98 DOS-box.
Requires 80386 CPU or higher.
- BASH 32 bit
This version is to be used in the DJGPP DOS port of the
Unix Bourne Again Shell (bash).
Requires 80386 CPU or higher.
- Windows NT/2000/XP/Vista/7/8/8.1/10 With long directory name and Windows LAN UNC paths support. If special characters (e.g. accented characters) are not shown properly, see the manual section WINDOWS CODE PAGES. Wcd for win32 also works on 64 bit Windows.
- Windows Command Prompt (cmd.exe)
Unicode support in Command Prompt requires Windows 7 or higher. Unicode does not work on older Windows versions. Or use Take Command/TCC on older Windows versions.
- Windows PowerShell. See also Windows PowerShell (WikiPedia). UNC paths are supported directly, no mapping to drive letters needed. Note: Only the file system provider is supported, no other providers.
- WinZsh and Tcsh. UNC paths are supported directly, no mapping to drive letters needed.
- MSYS. You can use the win32zsh, or the native MSYS version. The PDCurses interface does not work in the rxvt and mintty terminal, because those terminals don't accept standard input from native win32 programs (see also here). Alternative good terminals are ConEmu and Console2. The Zsh version uses Command Prompt style paths like c:/Windows, the native MSYS versions use MSYS style paths like /c/Windows.
- MSYS2. You can use the win32zsh version with PDCurses interface, or the native MSYS2 version with ncurses interface. The PDCurses interface does not work in the rxvt and mintty terminal, because those terminals don't accept standard input from native win32 programs (see also here). Alternative good terminals are ConEmu and Console2. The Zsh version uses Command Prompt style paths like c:/Windows, the native MSYS versions use MSYS style paths like /c/Windows.
msys2 versions require ncurses, gettext, libiconv, and libunistring.
- Cygwin (i686).
Behaves as the Unix versions. UNC paths are supported directly, no mapping to drive letters needed.
- Solaris (SPARC/x86)
- Mac OS X/Darwin
- OS/2 WARP
Comments and patches are welcome. Also help with translations is appreciated.
If you want to help translating the wcd messages into more languages go to the Translation Project. For UI messages see Wcd messages, and for the manual see Wcd manual
Latest development version from Git repository:
Wcd moved to a new Git repository on Dec 21 2015. Check out the new repo with this command:
git clone git://git.code.sf.net/p/wcd/wcd
Complete list of changes: WHATSNEW
- beta1: Fixed printing of East-Asian text on Windows with an East-Asian regional setting.
- beta2: Don't install international man pages when NLS is disabled.
Windows version with ncurses interface.
The Windows versions of wcd use the PDCurses library for the interface. PDCurses development has stopped. The last version 3.4 was made in Sep 2008. I'm looking forward to replacing PDCurses with Ncurses. Ncurses is actively maintained and improving slowly for Windows. Ncurses development focuses mainly on Unix. The main problem of Ncurses on Windows is screen flickering. This can be solved by using werase() instead of wclear(), but when werase() is used, the screen gets filled with garbage when an East-Asian CJK legacy font is used.
- wcd-5.3.1-win32-ncurses-nls-ucs.zip Win32 binary for Windows Command Prompt built with ncurses 6.0-20150627. With NLS, with Unicode.
- wcd-5.3.1-win64-ncurses-nls-ucs.zip Win64 binary for Windows Command Prompt built with ncurses 6.0-20150627. With NLS, with Unicode.
- Built with a recent version of ncursesw.
- Has better support for Unicode combining characters than pdcursesw.
- To work in Console2, set environment variable NCURSES_CONSOLE2 to 1 (set NCURSES_CONSOLE2=1).
- Screen may flicker.
Source code libintl DLL
The win32 binaries are packaged with with a patched version of MinGW's libintl DLL that has builtin relocation support.
See libunistring on how to get libunistring libraries for Cygwin/MinGW/MinGW-w64
WCD related links
Notification of new versions
Want to be notified whenever a new version of WCD arrives? Send an email to
with subject wcd add.
Write in the email for which operating system you use wcd.
(Your e-mail address will only be used for notification of new versions of wcd.
It will not be given to any third party.)
You will not get a notification of all beta versions, only when there are important changes in a beta release.
To remove your e-mail address from the list send an email with subject wcd remove.
You can also subscribe to the wcd project page at http://freecode.com/projects/wcd or http://sourceforge.net/projects/wcd/. Beta versions are never notified via Freecode or SourceForge.
The dos2unix/unix2dos home page has moved to http://waterlan.home.xs4all.nl/dos2unix.html
A 16 bit DOS port of Eli Zaretskii's man clone for DJGPP v2.
This is a simple `man' clone. It can be used to display Unix man
pages, both formatted and unformatted. It can also be used to display
pure-text docs, provided that the directory where these files are kept
is mentioned in the MANPATH environment variable; this makes it
especially suited to the PC environment where typically each program
or package come with some kind of text-only documentation.
A 16 bit 'groff' is currently missing, so unformatted man pages
cannot be viewed yet.
View the README and ChangeLog.
Get the 'less' pager from the gnuish collection.
Download here the latest version of DOSDIR. DOSDIR is freeware.
Partly under the GNU General Public Licence conditions.
It uses the DOS directory framework to provide a portable interface
for MS-DOS/UNIX/VMS application programmers. DOSDIR minimizes the OS-
specific directory access code for applications allowing programmers to
concentrate on the application itself and not on the low-level directory
and file structure. DOSDIR applications will run on their native operating
systems with the appropriate file syntax and handling, which is expected
for that platform.
DosDir is written by Jason Mathews.
View the README.
verjrdag 1.07 (31 januari 2007) - Verjaardagkalender.
Verjrdag is een eenvoudige verjaardagkalender
voor DOS, Windows en Unix. Verjrdag waarschuwt vooraf en
achteraf. Het aantal dagen vooraf en achteraf is in te
Verjrdag is a simple birthday calendar
for DOS, Windows en Unix. Verjrdag warns before
and after a birthday. The number of days before
and after can be adjusted.
(Gebruik pkunzip met -d optie.)
asm-1.1.2.zip ASM 1.1.2 for DOS, Windows and Linux, including documentation and source code. Jul 28 2015 (2687 kB)
A digital signal processing program for educational purposes.
View the README and WHATSNEW
Jul 28 2015: Version 1.1.2. Rebuilt Windows executable with latest Allegro 4 library (4.4.2) and recent gcc compiler (gcc 4.9.2, MinGW-w64 32 bit). The previous version 1.1 from 2007 does not run on Windows 8.
Sep 2007: Version 1.1.1. Documentation update.
Jun 2007: Version 1.1. After 10 years I finally took some effort to port ASM for DOS to Windows and Linux.
It was a piece of cake. The Allegro graphical library
I used for DOS, had become multi-platform in the meantime (Allegro 4.2.1).
Jul 1997: Version 1.0. Ported ASM to DOS using DJGPP (gcc 2.7.2) and Allegro graphical library (version 2.2).
1993: Version 1.0. Initial version on Acorn Archimedes RISC-OS.
Manual, updated Sep 8 2007:
Adobe acroread Free PDF viewer
- asm.pdf Manual in PDF format (200 kB)
- asm.ps Manual in PostScript format (185 kB)
Ghostscript, Ghostview and GSview Free PostScript and PDF viewer
Amol Desphande made a native Windows port of zsh. Works also on Windows 9x. UNC paths are supported directly, no mapping to drive letters needed. Here you find the latest version made by Amol. He is not maintaining this any more. His last change was on Jan 27 2001.
The work of Amol is continued since Jan 2010 in the WinZsh project, with recent updates.
free software programming
GNU homepage. Project of the Free
Cygwin A collection of tools which provide a Linux look and feel environment for Windows.
MinGW GCC for x86 Windows.
MinGW-w64 GCC for both x64 & x86 Windows.
MSYS2 project. Development environment for Windows, including MinGW-w64 with many libraries and utilities.
DJGPP homepage. Project of a 32 bit DOS version
of the Unix GNU C/C++ compiler + utilities
Open Watcom homepage Free DOS/Windows/OS2 C/C++ and Fortran compiler. Including IDE and debugger.
Open Watcom V2 homepage
The Free Country Free Programmer's Resources.
Allegro homepage. A game
programming library for DJGPP. Graphics, sound, joystick, FLI, timer, etc, etc.
The GUI Toolkit, Framework Page Libraries for Graphical programming. All platforms.
Gratis compilers (no payment)
Digital Mars C and C++ Compilers for Win32, Win16, DOS32 and DOS.
Freeware (archives, links collections etc.)
ibiblio.org (was MetaLab (was SunSITE)) Freeware archive
I'm a fan of old games from the nineties. My favorite games were/are Doom, Doom 2, Duke Nukem 3D, Command & Conquer, and Command & Conquer Red Alert.
CnCNet Command & Conquer Red Alert full game for free! Plays on Windows.
GZDoom Play Doom, Doom2, Heretic, and Hexen on Windows. Requires copy of original game.
EDuke32 Play Duke Nukem 3D on Windows or Linux. Requires copy of original game.
DOSBox. Free DOS-emulator for playing old DOS games on Windows and Linux.