From Wikipedia, the free encyclopedia
UnxUtils
Last updated | 24 April 2013; 12 years ago |
---|---|
Operating system | Microsoft Windows |
Licence | Free software |
Website | sourceforge |
Development status | Unmaintained |
As of | August 2015 |
UnxUtils is a collection of utility programs that provide popular Unix-based shell commands – ported from GNU implementations as native Windows programs that depend only on Win32 and the Microsoft C-runtime (msvcrt.dll). The collection was last updated externally on April 15, 2003, by Karl M. Syring. As of December 2016, the most recent release was an open-source project at SourceForge, with the latest binary release in March, 2007 (though the files are dated 2000). The independent distribution included a main zip archive (UnxUtils.zip, 3,365,638 bytes) complemented by more recent updates (UnxUpdates.zip, 878,847 bytes, brought some binaries up to year 2003), but the SourceForge project has no UnxUpdates.zip package.
An alternative collection of Unix-based utilities for Windows is GnuWin32. It has later versions of many programs, but requires supporting files (e.g. DLLs).[1]
Supported commands include:
- agrep
- ansi2knr
- basename
- bc
- bison
- bunzip2
- bzip2
- bzip2recover
- cat
- chgrp
- chmod
- chown
- cksum
- cmp
- comm
- compress
- cp
- csplit
- cut
- date
- dc
- dd
- df
- diff
- diff3
- dircolors
- dirname
- du
- echo
- egrep
- env
- expand
- expr
- factor
- fgrep
- find
- flex
- fmt
- fold
- fsplit
- gawk
- gclip
- gplay
- grep
- gsar
- gunzip
- gzip
- head
- id
- indent
- install
- join
- jwhois
- less
- lesskey
- ln
- logname
- ls
- m4
- make
- makedepend
- makemsg
- man
- md5sum
- mkdir
- mkfifo
- mknod
- mv
- mvdir
- nl
- od
- paste
- patch
- pathchk
- pclip
- pr
- printenv
- printf
- ptx
- pwd
- recode
- rm
- rman
- rmdir
- sdiff
- sed
- seq
- sh
- sha1sum
- shar
- sleep
- sort
- split
- stego
- su
- sum
- sync
- tac
- tail
- tar
- tee
- test
- touch
- tr
- tsort
- type
- uname
- unexpand
- uniq
- unrar
- unshar
- unzip
- uudecode
- uuencode
- wc
- wget
- which
- whoami
- xargs
- yes
- zcat
- zip
- zsh
- Cygwin – Unix-like environment for Windows
- GNU Core Utilities – Collection of standard, Unix-based utilities
- GnuWin32 – Discontinued implementation of the GNU toolchain for Windows
- Interix – Unix subsystem for Windows NT operating systems
- List of POSIX commands
- MinGW – Free and open-source software for developing applications in Microsoft Windows
- MKS Toolkit
- Windows Services for UNIX – Discontinued software produced by Microsoft which provided Unix environment on Windows NT
- ^ «Difference between UnxUtils and GNU CoreUtils». Server Fault. Retrieved 2024-08-09.
- Project site (latest) on SourceForge
- Project site (older)
- Shunix/K93 Unix – UNIX utilities written in Korn Shell
- wintools – Collection of utilities for Windows
Common Unix Tools For Windows
To add these commands to the windows command line edit the Path variable:
from windows 7:
-
Click Start.
-
Right click on Computer.
-
Select Properties
-
click on Advanced System Settings
-
on the Advanced tab click on Enviornment Variables…
-
under system variables select «Path»
-
then click on Edit…
-
for Variable Value go to the end of the line and enter
-
Click OK Ok OK and Apply if necessary
-
Extract this file to a folder in C:\
-
Name the folder «unix» without quotes
CONGRATS!
you now have all these commands available for you at the windows CMD and they behave much like thier UNIX counterparts
agrep.exe, ansi2knr.exe, basename.exe, bc.exe, bison.exe, bunzip2.exe, bzip2.exe, ,bzip2recover.exe, ,c.bat ,cat.exe, cel.exe, chgrp.exe, chmod.exe, chown.exe, cksum.exe, cmp.exe, comm.exe, compress.exe, cp.exe, csplit.exe, cut.exe, date.exe, dc.exe, dd.exe, df.exe, diff.exe, diff3.exe, dircolors.exe dirname.exe, du.exe, echo.exe, egrep.exe, ejectcd.exe, env.exe, expand.exe, expr.exe, factor.exe, fgrep.exe, find.exe, flex.exe, fmt.exe, fold.exe, fsplit.exe, gawk.exe, gclip.exe, gplay.exe, grep.exe, gsar.exe, gunzip.exe, gzip.exe, head.exe, id.exe, indent.exe, install.exe, ip.bat,
join.exe, jwhois.exe, less.exe, lesskey.exe, libfl.a, libfl.lib, list.txt, ln.exe, logname.exe, ls.exe, m4.exe, make.exe,
makedepend.exe, makemsg.exe, man.exe, md5sum.exe, mkdir.exe, mkfifo.exe, mknod.exe, mv.exe, mvdir.exe, nc, nl.exe, od.exe,
paste.exe, patch.exe, pathchk.exe, pclip.exe, pr.exe, premake4.exe, printenv.exe, printf.exe, ptx.exe, putty.exe, pwd.exe, python.bat, recode.exe, rm.exe, rman.exe, rmdir.exe, scp.exe, sdiff.exe, sed.exe, seq.exe, sha1sum.exe, shar.exe, sleep.exe, sort.exe, split.exe, stego.exe, su.exe, sum.exe, sync.exe, tac.exe, tail.exe, tar.exe, tee.exe, test.exe, tmp.exe, touch.exe, tr.exe, tsort.exe, type.exe, uname.exe, unexpand.exe, uniq.exe, unrar.exe, unshar.exe, unzip.exe, uudecode.exe, wc.exe, wget.exe, wget.hlp, which.exe, whoami.exe, whois.exe, x.bat, xargs.exe, yes.exe, zcat.exe, zip.exe, zsh.exe
Includes: Same tools as BusyBox: [, [[, acpid, addgroup, adduser, adjtimex, ar, arp, arping, ash, awk, basename, beep, blkid, brctl, bunzip2, bzcat, bzip2, cal, cat, catv, chat, chattr, chgrp, chmod, chown, chpasswd, chpst, chroot, chrt, chvt, cksum, clear, cmp, comm, cp, cpio, crond, crontab, cryptpw, cut, date, dc, dd, deallocvt, delgroup, deluser, depmod, devmem, df, dhcprelay, diff, dirname, dmesg, dnsd, dnsdomainname, dos2unix, dpkg, du, dumpkmap, dumpleases, echo, ed, egrep, eject, env, envdir, envuidgid, expand, expr, fakeidentd, false, fbset, fbsplash, fdflush, fdformat, fdisk, fgrep, find, findfs, flash_lock, flash_unlock, fold, free, freeramdisk, fsck, fsck.minix, fsync, ftpd, ftpget, ftpput, fuser, getopt, getty, grep, gunzip, gzip, hd, hdparm, head, hexdump, hostid, hostname, httpd, hush, hwclock, id, ifconfig, ifdown, ifenslave, ifplugd, ifup, inetd, init, inotifyd, insmod, install, ionice, ip, ipaddr, ipcalc, ipcrm, ipcs, iplink, iproute, iprule, iptunnel, kbd_mode, kill, killall, killall5, klogd, last, length, less, linux32, linux64, linuxrc, ln, loadfont, loadkmap, logger, login, logname, logread, losetup, lpd, lpq, lpr, ls, lsattr, lsmod, lzmacat, lzop, lzopcat, makemime, man, md5sum, mdev, mesg, microcom, mkdir, mkdosfs, mkfifo, mkfs.minix, mkfs.vfat, mknod, mkpasswd, mkswap, mktemp, modprobe, more, mount, mountpoint, mt, mv, nameif, nc, netstat, nice, nmeter, nohup, nslookup, od, openvt, passwd, patch, pgrep, pidof, ping, ping6, pipe_progress, pivot_root, pkill, popmaildir, printenv, printf, ps, pscan, pwd, raidautorun, rdate, rdev, readlink, readprofile, realpath, reformime, renice, reset, resize, rm, rmdir, rmmod, route, rpm, rpm2cpio, rtcwake, run-parts, runlevel, runsv, runsvdir, rx, script, scriptreplay, sed, sendmail, seq, setarch, setconsole, setfont, setkeycodes, setlogcons, setsid, setuidgid, sh, sha1sum, sha256sum, sha512sum, showkey, slattach, sleep, softlimit, sort, split, start-stop-daemon, stat, strings, stty, su, sulogin, sum, sv, svlogd, swapoff, swapon, switch_root, sync, sysctl, syslogd, tac, tail, tar, taskset, tcpsvd, tee, telnet, telnetd, test, tftp, tftpd, time, timeout, top, touch, tr, traceroute, true, tty, ttysize, udhcpc, udhcpd, udpsvd, umount, uname, uncompress, unexpand, uniq, unix2dos, unlzma, unlzop, unzip, uptime, usleep, uudecode, uuencode, vconfig, vi, vlock, volname, watch, watchdog, wc, wget, which, who, whoami, xargs, yes, zcat, zcip.
Adventures with Unix in Windows 10
Author: Chissa Rivaldi
Last Updated: 07/13/2019
Link to Intro to Biocomputing tutorial slides from Week 1 Friday
Why do we want a terminal on Windows?
Many times you’ll run into software that aren’t written for Windows. Sometimes your files are too big for your own computer. In these instances, you essentially need a new machine to do your work. You can install something called a virtual machine, which is like putting a mini computer on your computer. These are really useful for some workflows but they can easily take up a huge amount of space and we don’t really need them to accomplish our current objective of simply getting started in UNIX. There are tools like Binder and Docker that can be built for specific workflows and make reproducing workflows a breeze, but to get a command line on your local machine, we can get started with something less intensive.
First, figure out if you have a 32 or 64 bit operating system.
Press the windows key and type “about” — select the ‘About your PC’ option that comes up & look for ‘System type’ (see example below).
Now you can decide out which Unix setup you want to install. 32-bit users, you want Cygwin or MobaXterm. 64-bit users, you can either do a native install of Bash/Ubuntu or install either Cygwin or MobaXterm. (There are other options, but these are the ones I’ve had the most experience using/installing.)
- Native install of Ubuntu
- You’ll Windows 10 with 2017 Fall Creator’s Update or later — Windows update page
- Installation Instructions — Another Option
-
MobaXterm (Website)
- Installation Instructions — Choose Home Edition
- In my experience, MobaXterm has more bells and whistles, but the tradeoff is that it’s a bit slower to load.
- Cygwin — Website
- Pretty quick and light, make sure you install the tools you might want to use within a terminal (nano, git, python2, curl, wget, unzip, make, and openssh are the ones I chose as per the class instructions).
To test out your install, type
ls
and hit “Enter”. This command prints list of the files in the directory (a.k.a. foler) you’re currently working in.
A screen like this means you were almost certainly successful:
What you’re seeing in this image is an empty directory — there are no files in this directory yet. You might have some, depending on where you started.
But I know I have a ton of files on my computer — why can’t I see them?
When you start playing with files on your own computer, you’ll notice that the file directory setup you’re using isn’t the one you’re used to (familiar directories like ‘Downloads’ or ‘Desktop’ will not be visible). This is because of the way that Unix and Windows interact (i.e. not at all). The way to access your files depends on whether you’re using native Ubuntu on Windows or Cygwin or MobaXterm and requires a working knowledge of file paths to understand what’s really going on.
$~$
Instructions for All Terminals
If you type cd
with no arguments and hit “Enter”, you’ll always go to your default home folder. You can always find out what directory you are currently in by using the command pwd
:
$~$
This is similar to what your directory looks like now with a Cygwin setup (bonus: this was the exercise we did in class on Monday!). Some files/directories omitted for clarity. You want to go from your “Default Home” to your “Windows Home” — signified by the blue stars. To get there in this example, you need to go up two directories, then down four; see the red arrows.
$~$
$~$
$~$
$~$
You can do this all in one step. Here is what that command looks like on my computer (my username is ‘criva’):
For a Cygwin setup
criva@Bistromath ~ cd ../../cygdrive/c/Users/criva
or, alternatively, I could start anywhere on my file system and get to my Windows Home like this:
crivaldi@Bistromath ~ cd /cygdrive/c/Users/criva
The difference between these two commands is that in the first, you’re using a relative file path, and in the second, you’re using an absolute file path. The Software Carpentry lesson on file paths explains this thoroughly if you’d like this broken down in detail.
$~$
For Ubuntu on Windows setup
Relative path:
cd ../../mnt/c/criva
or absolute path:
/mnt/c/criva
More info on Ubuntu in Windows 10
$~$
$~$
Other Tips
- Explainshell.com is really helpful when you’re learning commands (I still use it every now and then tbh)
- Amazing blog with a lot of comic strip-like information about unix commands. https://jvns.ca/ (cool example: https://jvns.ca/zines/#linux-comics)
- If, at any point, you need to name something, do not use spaces. You can use: ‘_’ or ‘-‘ but keep it simple until we learn more about special characters.
— Use PuTTy, CyberDuck, Rstudio to transport files back and forth (in command line, use the commandscp
is too tricky).
— Good text editors with a graphical user interface (GUI) & some fancy tricks:- Sublime
- Atom