msls - GNU ls for Microsoft Windows
Switch branches/tags
Clone or download



msls is a port of GNU ls onto the MS-Windows platform.


msls is an adaptation of the GNU ls directory information utility for Microsoft Windows. It lists exhaustive information on on Windows files in a format familiar to UNIX users, including information on DACLs/SACLs, integrity levels, reparse points, shortcuts, hard links, symbolic links, hidden streams, encryption, compaction, virtualization, object tracking identifier, and offline status.

See the documentation for details.

You can download ls at Also included is a native Windows version of the grep text search utility.

The primary repository is hosted on github at


Build Instructions

git clone REPO_DIR
build &:: "release" is the default target

Build artifacts will be produced out-of-source, being placed in the "#build" subdirectory of REPO_DIR.

build help will show all available build targets. Some other specific build targets are:

build all build both debug and release artifacts
build clean clean up all build artifacts
build debug build debug artifacts
build release build release artifacts


To install: Copy "ls.exe" from the build directory to your favorite executable folder for your 32-bit command line utilities (eg, copy ls.exe C:\Windows\SysWOW64\ls.exe


For documentation see


Set the "LS_OPTIONS" environment variable in Control Panel -> System -> Advanced -> Environment Variables. The recommended option settings are:

-bhAC --more --color=auto --recent --streams

For grep the recommended settings for "GREP_OPTIONS" are:

--binary-files=text -d skip --color=auto


The port was written by Alan Klietz of U-Tools Software. Additional patches and a streamlined build process were contributed by Roy Ivy III.