BusyBox crams 117 Unix tools into a tiny Windows executable
Unix is renowned for its powerful command line tools, and there are many ways you can try at least some of them on the PC. Installing Gnu on Windows gets you 100+ of the best known tools, recompiled to run under Windows, while favourites like grep have been ported individually.
But if you’re looking for simplicity and convenience, it’s hard to beat BusyBox, which crams tiny versions of 117 Unix utilities into a single 645 KB executable. There’s no bulk, no complex folder structure, just one package which provides everything you need.
You don’t need any Unix/ Linux knowledge to get at least something from the program, as many of its commands are very simple. Cal displays a text calendar (month or year); df and du summarise hard drive use; head displays the first 10 lines of a text file; sleep pauses your script for a defined time; unzip extracts files from archives, and so on.
If you’re comfortable at the Windows command line then you’ll appreciate BusyBox’s more advanced tools. Diff compares text files and displays their differences; ftpput and ftpget store and retrieve files via ftp; grep is a powerful search tool with regular expression support; hexdump displays files in various custom formats; and there are smarter ways to copy files, compare them, and generally take better control of your system.
Linux experts should keep in mind that BusyBox has been optimised for size, and its tools generally don’t have as many options as the originals. The program is more about convenience and portability than supporting every single optional switch.
For all that, most tools retain their core features, and BusyBox does support a lot of utilities:
[, [[, ar, ash, awk, base64, basename, bash, bbconfig, bunzip2, bzcat, bzip2, cal, cat, catv, chmod, cksum, clear, cmp, comm, cp, cpio, cut, date, dc, dd, df, diff, dirname, dos2unix, du, echo, ed, egrep, env, expand, expr, false, fgrep, find, fold, ftpget, ftpput, getopt, grep, gunzip, gzip, hd, head, hexdump, kill, killall, ls, lzcat, lzma, lzop, lzopcat, man, md5sum, mkdir, mktemp, mv, od, patch, pgrep, pidof, printenv, printf, ps, pwd, rev, rm, rmdir, sed, seq, sh, sha1sum, sha256sum, sha3sum, sha512sum, shuf, sleep, sort, split, stat, strings, sum, tac, tail, tar, tee, test, touch, tr, true, uname, uncompress, unexpand, uniq, unix2dos, unlzma, unlzop, unxz, unzip, usleep, uudecode, uuencode, vi, wc, wget, which, whoami, xargs, xz, xzcat, yes and zcat
That’s a lot to learn, but you can pick out the tools you need, and the program comes with its own basic help. Enter BusyBox at the command line to see the full list of utilities, or add a function name – BusyBox grep – for details on exactly what you can do.