|Free Software for DOS >|
|> COMMAND INTERPRETERS / SHELLS|
|> UTILITY SETS|
|> OTHER UNIX >> DOS PROGS IN THESE PAGES|
The programs featured here are DOS ports of Unix originals, or of the Free Software Foundation's tools for the GNU Operating System
Programs from the GNUish Project, and some others, run in 80x86 real mode (16-bit) and work on 80286 or older CPUs (and almost any DOS).
More recent ports are 32-bit DJGPP builds that require an 80386+ CPU and a DOS Protected Mode Interface (usually supplied by CWSDPMI or by Windows).
By 2005, development of most 32-bit DOS ports had gone dormant or ended (/rlg 2010)
See More Resources - 1 for links to additional info and download sites.
|COMMAND INTERPRETERS / SHELLS|
Also see Mi-Shell (MSH), a Norton Commander-type shell with Unixish features.
bash GNU's command shell, ported to DOS.
* * * *
[added 2004-10-29, updated 2006-08-15]From the docs:
Bash... the GNU Bourne-Again SHell... the shell, or command language interpreter, for the GNU operating system... incorporates useful features from the Korn and C shells (ksh and csh)
...a macro processor that executes commands. A Unix shell is both a command interpreter, which provides the user interface to the rich set of GNU utilities, and a programming language, allowing these utilitites to be combined. Files containing commands can be created, and become commands themselves. These new commands have the same status as system commands in directories such as /bin, allowing users or groups to establish custom environments.
2003-04-25: v2.05b, 32-bit DJGPP port for 80386+.
Author: Chet Ramey et al. (2003).
|bsh205bs.zip||(2.5M)||Source, more docs|
MS Shell Unixish command shell for DOS.
* * * *
This shell is based on Unix SVR4's Korn and Bourne shells, and the MINIX shell by Charles Forsyth. Some OS/2 commands have been added. Binaries package includes 16- and 32-bit DOS, and 16- and 32-bit OS/2 executables. Also see the matching UXUTL utilty set.
Author: Ian Stewartson, UK (1994).
Also see RUTILS4.
GNU Shell Utilities (Shellutils, Sh-utils) Core components of the GNU operating system.
* * * *
[added 2005-03-28, updated 2006-08-15]
These, with the Fileutils and the Textutils, are core components of the GNU operating system. In this version, all are 32-bit DJGPP compilations.
basename Strip directory and suffix chroot Specify the root directory date Print/set system date and time dirname Strip non-directory suffix echo Print a line of text env Modify the environment expr Evaluate expressions factor Print prime factors false Do nothing, unsuccessfully groups Print group names a user is in hostid Print numeric host identifier hostname Print or set system name id Print real/effective uid/gid logname Print current login name nice Modify scheduling priority nohup Immunize to hangups pathchk Check file name portability printenv Print environment variables printf Format and print data pwd Print working directory seq Print numeric sequences sleepp Delay for a specified time stty Print/change terminal settings su Modify user and group id tee Redirect to multiple files test File/string tests true Do nothing, successfully tty Print terminal name uname Print system information users Print current user names who Print who is logged in whoami Print effective user id yes Print a string indefinitely
Authors: Jim Meyering, Roland McGrath, David MacKenzie, Richard Mlynarik, Mike Parker, Arnold Robbins, Joseph Arceneaux, Kaveh Ghazi, Ulrich Drepper, Paul Eggert, Richard M. Stallman for GNU. DOS port by Prashant TR (2003).
|shl2011b.zip||(1.5M)||Binaries, man pages|
UXUTL Comprehensive collection of command line Unix utilities for DOS.
* * * *
[updated 2004-10-29, links updated 2010-07-07]
This set of UNIX utilities was originally developed for use with the author's Uish MS Shell but the tools can be used as standalone programs. The UXUTL set is split into four archives (a, b, c, and d) and mainly consists of file and text processing programs. Documentation (included with the "a" set) is sparse you'll need to acquire the corresponding Unix MAN docs to appreciate the full potential of these programs. One util I use frequently from this package is tee it allows you to redirect output to the screen and to a file *simultaneously.*
Here are the contents of the four packages that make up the collection:
a basename Display file namename bmgrep Fast pattern matching utility cal Display calendar cat Concatenate files cdiff Context difference cgrep Searches file for pattern and display context chmod Change file attributes cmp Compare two files comm Select or reject lines common to two sorted files cp Copy files cpio Archive files csplit Context or line file splitter cut Cut data out of a file USAGE doc file b date Display / change date and time dd Data copy df Display Disk Free space dirname Extract directory name from filename du Display disk usage expr Evaluate arguments as expression fgrep Searches file for string find Search dir tree for files matching req. fold Fold long lines to stdout fstat Print file status information grep Searches file for pattern head Display file headers ls List directory c m4 M4 Macro processor make Makefile processor mkdir Make path mv Move files od octal dump printarg Print arguments to stdout printenv Print environment to stdout rm Remove files rmdir Remove directories setschar Set switch character sleep Wait for n seconds sort Sort files split Split file into n line parts d strings Display the strings in files sym Display symbolic info from obj and lib files tail Print tail of file tee Copy stdin to one or more files and standard output touch Change a file's time stamp or size tput Output a termcap string tr Translate characters uniq Display unique lines wc Count number of words in file which Display the dir containing a command from PATH
Author: Ian Stewartson, UK (1994).
Or get all all packages in one zip (exclusively from FSFD):
Berkeley Utilities Unixish tool set for DOS.
* * * *
[added 2001-11-16, updated 2005-12-09, links verified/updated 2010-07-07]
Also see the related Mi-Shell (MSH), which looks for this set.From the docs;
The Berkeley Utilities are a set of 40 Unix-like utilities for MS-DOS... It is not as complete a set of Unix commands as can be found in some other packages (e.g. MKS) but it contains some useful utilities you don't find elsewhere (e.g. cb, xstr)...[T]hey now work with long filenames under Win95/98, and df can understand multi-gigabyte partitions...Compared to the GNU utilities, [the Berkeley Utilities] have the advantage that they are much smaller (20K on average instead of 100K). Compared to MKS utilities, they have the advantage that each utility is self contained (it can run separately without any other support file, and each utility contains a help screen)...
The Berkeley Utilities follow rigorously the Unix System V syntax and include all the options found on any Unix system plus a few carefully chosen ones. They used to sell for $200 and are now free.
awk string processing language basename extract base part from pathname of a file or directory cal display the calendar for a year or a month cat concatenate files cb C beautifier cmp binary file comparison comm look for common lines in 2 files cp copy files and directories cut cut out columns or fields from files df statistics on disk usage diff compare files and directories dtree display tree structure of directory du display space each directory takes ech echo arguments ed line editor expand expands tabs into blanks find find files with certain properties, execute commands on each grep search for patterns in files head display the beginning of one or several files join relational join of two files ls list files and directories make update files more text files browser mv move files and directories od octal or hexadecimal dump paste merge files as columns of a single file rederr redirect error output of commands rm remove files and directories sed stream editor sort sort files split split a file into smaller pieces tail display the end of a file tee pipe connection and derivation touch update file timestamp tr translate standard in to standard out unexpand compress spaces to tabs uniq weed out or find duplicate lines in a sorted file wc count words and lines which find which version of a program is active xstr extract character strings from C programs
Authors: Jean Michel and Patrick Mérissert-Coffinières, France (1991, 2001). Distributed by OPENetwork.
2001-02-12: v2.0. Formerly paid commercial software, now in the public domain and completely free.
Download berk.zip (1.2MB), complete package with all utils + manual (pdf format).
Go to the Berkeley Utilities page at OPENetwork to download individual programs, and see examples of use with screenshots.
GNU Diffutils (diff) File difference package.
* * * *
[added 1998-08-16, updated 2006-08-15, links verified/updated 2010-07-07]
These utils are available in two sets, 32-bit and 16-bit. The 32-bit DJGPP set includes 4 programs: diff, cmp, diff3, and sdiff. Diff seems best suited to tracking differences among versions of code / documents through time (i.e., version maintenance) rather than offering quick, intuitive recognition of differences as with VCOMP. But as noted by a reader:
[diff] has long had a very readable format, that does not require ansi color etc. called the context format:diff -C 1 file1 file2This prints different lines (changed, deleted, or added) with one line that is the same in each file at the beginning and end, something like this:first line is same 2C -- second line of file is different --------------------------------------- 2C -- second line of this file is different third line is sameWhere the first and third lines are the identical "context" lines. Very readable format for changed lines, a little less for lines added or deleted.
Also, for hard copy, double column, portrait-mode visual comparison of content (i.e., ignoring layout) you may want to re-wrap copies of your two text files to a narrow width (e.g., 35, if that doesn't mangle the readability too much) and then play with theFrom the docs: Diff
--width=NUMparameter (e.g., =80) in combination with the -y switch. Diff is capable of handling large files. Win9x LFN compatible under Win9x.
...outputs differences between files line by line in any of several formats, selectable by command line options. This set of differences is often called a "diff" or "patch". For files that are identical, diff normally produces no output; for binary (non-text) files, diff normally reports only that they are different. You can use the set of differences produced by diff to distribute updates to text files (such as program source code) to other people...The cmp command shows the offsets and line numbers where two files differ. cmp can also show all the characters that differ between the two files, side by side. ...Use the diff command to show differences among three files...diff3 can report the differences between the original and the two changed versions, and can produce a merged file that contains both persons' changes together with warnings about conflicts...Use the sdiff command to merge two files interactively.
...provides ways to suppress certain kinds of differences that are not important to you. Most commonly, such differences are changes in the amount of white space between words or lines...differences in alphabetic case or in lines that match a regular expression that you provide.
The older 16-bit utils are GNUish Project ports, and do not include sdiff.
Authors: Paul Eggert, Mike Haertel, David Hayes, Richard Stallman, Len Tower, Thomas Lord, Randy Smith, Torbjorn Granlund and David MacKenzie for GNU. 16-bit port by Helge Oldach, Germany (1993). 32-bit port by Eli Zaretskii, Israel (2004).
|DOS32||dif281b.zip||(394K)||Binaries, man pages|
|DOS16||diff23x.zip||(139K)||Binaries, man pages, source|
Also see: File Compare / Difference
GNU Fileutils Collection of file utilities.
* * * *
[added 1998-09-13, updated 2005-03-11]
An up-to-date, all-in-one file toolkit. Separately zipped documentation helpful.
32-bit DJGPP port for 80386+, supports Win9x long file names (LFNs):
chgrp Changes file group ownership chown Changes file ownership chmod Changes file permissions cp Copies files dd Copies and converts a file df Shows disk free space on filesystems dir Gives a brief directory listing dircolors Setup program for the color output of GNU ls du Shows disk usage on filesystems install Copies file and sets its permissions ln Creates file links ls Lists directory contents mkdir Creates directories mkfifo Creates FIFOs (named pipes) mknod Creates special files mv Moves files rm Removes (deletes) files rmdir Removes empty directories shred Destroy data in files sync Synchronizes filesystem buffers and disk touch Changes file timestamps vdir Long directory listing
16-bit port for 8086/80286, similar but not identical contents:
chmod change the access permissions of files cp copy files dd convert a file while copying it df summarize free disk space di list contents of directories du summarize disk usage install copy files and set their attributes ls list contents of directories mkd make directories mv rename files rm remove files rmd remove empty directories touch change file timestamps vdir list contents of directories
Authors: Richard Stallman, David MacKenzie, Torbjorn Granlund, Larry McVoy, Paul Eggert, Paul Rubin, Stuart Kemp, Jim Meyering, H. Peter Anvin, Arnold Robbins, Jim Kingdon, Randy Smith, Colin Plumb for GNU. 16-bit port by Stephen McConnel (1995). 32-bit port by Richard Dawe, UK, et al. (2002).
|v4.1||fil41b.zip||(1.7M)||Binaries + manual|
|v3.12||fut312bx.zip||(341K)||Binaries + manual|
GNU Findutils Powerful file finding package.
* * * *
These are the programs in the set:
find search for files in a directory hierarchy locate list files in databases that match a pattern locatedb front-compressed file name database updatedb update a file name database xargs build and execute command lines from standard input
Somewhat complex. Supports Unix wildcards. The locate program, which accesses a previously compiled database of file names, i.e, a file, rather than an entire drive, is accessed during a search (quicker, less disk wear, but requires regular maintainence of a filename database. The DOS version uses a less than intuitive batch analog of the file database updater).
A simpler locate program than the one here, but using the same principle is locat110.zip (but database creation freezes on big drives with long paths).
2003-12-15: v4.1.7. 32-bit DJGPP port for 80386+.
Authors: Eric Decker, David MacKenzie, Jay Plett, Tim Wood, Mike Rendell for GNU. DOS port by Eli Zaretski, Israel; and Andrew Cottrell, Australia (2003).
GNU Textutils Collection of text utilities.
* * * *
[added 1998-09-13, updated 2005-03-11]
An all-in-one toolkit, available in 16-bit and in 32-bit DJGPP compilations. The 32-bit programs may get the job done quicker than their 16-bit counterparts, will definitely handle larger files, and support Win9x long file names. Separately zipped documentation helpful.
Output of entire files cat Concatenate and write files. tac Concatenate and write files in reverse. nl Number lines and write files. od Write files in octal or other formats. Formatting file contents fmt Reformat paragraph text. pr Paginate or columnate files for printing. fold Wrap input lines to fit in specified width. Output of parts of files head Output the first part of files. tail Output the last part of files. split Split a file into fixed-size pieces. csplit Split a file into context-determined pieces. Summarizing files wc Print byte, word, and line counts. sum Print checksum and block counts. cksum Print CRC checksum and byte counts. md5sum Print or check message-digests. Operating on sorted files sort Sort text files. uniq Uniqify files. comm Compare two sorted files line by line. Operating on fields within a line cut Print selected parts of lines. paste Merge lines of files. join Join lines on a common field. Operating on characters tr Translate, squeeze, and/or delete characters. expand Convert tabs to spaces. unexpand Convert spaces to tabs.
Authors: 32-bit port by Eli Zaretskii, Israel (2003). 16-bit port by Stephen McConnel (1995).
|1995-03-20:||1.11||16-bit port for 8086/80286|
|2003-12-15:||2.0||32-bit DJGPP port for 80386+|
|DOS16||tut111ax.zip||(453K)||Binaries, man pages|
|DOS32||txt20b.zip||(1.6M)||Binaries, man pages|
GNU Shar utils Prepare archives for mailing.
* * * *
[added 2004-10-29, updated 2006-08-15]From the docs;
shar makes so-called shell archives out of many files, preparing them for transmission by electronic mail services. A "shell archive" is a collection of files that can be unpacked by /bin/sh. A wide range of features provide extensive flexibility in manufacturing shars and in specifying shar _smartness_. For example, shar may compress files, uuencode binary files, split long files and construct multi-part mailings, ensure correct unsharing order, and provide simplistic checksums.
unshar scans a set of mail messages looking for the start of shell archives. It will automatically strip off the mail headers and other introductory text. The archive bodies are then unpacked by a copy of the shell. unshar may also process files containing concatenated shell archives.Also in package:
mail-files Send files to remote site mailshar Make and send a shell archive remsync Synchronize remote files uuencode Force binary file to 7-bits uudecode Restore file from 7-bits
Authors: James Gosling, William Davidsen, Warren Tucker, Richard Gumpertz, François Pinard for GNU. DOS port by Juan Manuel Guerrero, Germany (2000).
2000-10-10: v4.2c. 32-bit DJGPP port for 80386+.
|shar42cb.zip||(319K)||Binaries + manual|
|OTHER UNIX >> DOS PROGS IN THESE PAGES|
Some of these also appear in the collections above, some don't.
|a2ps||Generates PostScript from ASCII, dvi, and other file formats|
|AGREP||grep-like util with approximate pattern matching capability|
|AntiWord||Displays MS Word files, and converts to plain text, PostScript, PDF|
|cal (2)||Displays calendar to standard output; date notes|
|cURL||Internet file transfer|
|dos2ux||Converts DOS format text > Unix format|
|DU||Displays disk usage for directory tree|
|egrep||Searches file for string, using extended regular expressions|
|elvis||vi-like text editor for power users|
|emacs||Emacs family of text editors|
|Fast GREP||Find files containing search string|
|fgrep||Searches file for string (fixed strings), using regular expressions|
|ftp||Internet file transfer protocol|
|GifTrans||Produces transparent GIF files for web pages.|
|grep||Searches file for pattern, using regular expressions|
|gzip / gunzip||File compressor / decompressor|
|ispell||Spell checker (3 versions listed)|
|less||File pager / viewer and MORE replacement|
|LINK/LN (ln)||Link executable files to file names in other directories|
|look||Word lookup util|
|lynx||Text mode WWW browser and offline HTML viewer|
|man (PCMan)||Extension of the |
|MD5SUM||Calculate and verify MD5 hash values for files|
|Mi-Shell (MSH)||Programmable command shell|
|nano||Enhanced clone of pico|
|NcFTP||Set of ftp programs|
|Penta Text Tools||Search, view, process strings in any text file|
|perl||High level programming language|
|pico||Pine emailer's text editor|
|Pine||Network / Internet emailer|
|PPPD||Internet Point to Point Protocol packet driver|
|pr||Multiple-file print formatter|
|PSUtils||Process PostScript documents|
|RUTILS4||Mixed group of programs, some from Unix: banner, cal, cat, tee & more|
|sed||Versatile text search / replace and formatting tool|
|sleep||Batch util sleeps until event occurrence|
|Talk||Network or Internet Talk (chat) client / server|
|tar||Manipulates TAR archives|
|tee||Sends program output to both screen and file|
|Telnet||Network & Internet terminal (3 versions)|
|uniq||Remove or display duplicate lines from sorted file|
|uuen/decode||Translates binary files to ASCII text for electronic transmission|
|units||Command line or interactive units conversion|
|units, GNU||Enhanced command line or interactive units conversion|
|ux2dos||Converts Unix format text > DOS format|
|vi||Family of powerful text editors|
|wc||Simple word count program|
|Wget, GNU||Command line ftp / http / https file downloader|
|wput||Command line ftp uploader|
|XGREP||Tiny text finder with regular expression support|
[ Go to Top | Front Page ]
©1994-2022 Rich Green.