I am a Windows user who wants programs like grep and sed along with other utilities like ls, cut etc in my command prompt. I came across 2 packages which would accomplish this
- UnxUtils
- GNU Coreutils
I would like to know what is the difference between the two both feature wise and more importantly performance wise before I choose between them. From what I have seen Coreutils is a super set of UnxUtils. Is this correct ?
The main claim to fame of UnxUtils is that it sits on top of MSVCRT.dll as opposed to glibc. This means that it is aware of native windows paths (i.e. you can use commands like ls c:). Some (particularly cygwin and SFU) map native DOS path names under a unix-like tree structure.
Native DOS path support is useful if you want to execute unix commands from .cmd files (which is quite useful to do sometimes) Note that this is a difference vs. SFU or Cygwin. I'm not sure if CoreUtils does this and the web documentation isn't clear. If it does, you're probably better off with CoreUtils as maintenance on UnxUtils is fairly sparse (e.g. no native 64 bit versions). However, UnxUtils is pretty stable and runs OK on 64 bit systems.
EDIT: although the documentation isn't explicit, ancillary web resources imply support for DOS paths, so CoreUtils probably does do this.
Not sure where you got your "GNU Coreutils" from....
Years ago, I used UnxUtils. Reason? Just because I came across it first. And I liked that it, running on Windows, could handle that platforms path delimiter
\
just fine... Later, I noticed that some if its tools didn't really work in all details/cli-switches like I needed them (and was used to from Linux). Also, I experienced some crashes. (Don't ask for details, this is fading memories.) Moreover, these tools didn't seem to be maintained any longer.Then I searched for alternatives. I came across the GnuWin32 package. This seemed to me to...
(a) ...be better maintained (some tools get updates from time to time);
(b) ...contain some more of the GNU and other Free Software tools than UnxUtils does.
Though it's an annoyance to me that some of the GnuWin32 utils insist on
/
for path separation (some others handle both just fine), I've still clinged to GnuWin32.