Re: Microsoft Success Built On Sabotage And Bribery

Charlie Gibbs <[email protected]>
Newsgroups comp.os.linux.advocacy,comp.os.linux.misc
Message-ID <[email protected]>
On 2026-07-07, InterLinked <[email protected]> wrote:

> On 6/30/2026 8:03 PM, Charlie Gibbs wrote:
> 
>> I found a collection of Unix-style utilities (ls, grep, cut, uniq,
>> etc.) years ago.  The .EXEs' date stamps range from 1999 to 2003.
>> They're enough for me to sort of pretend I'm using real tools,
>> rather than CMD.EXE's brain-damaged not-quite-equivalents.
>
> Maybe this is what you're alluding to, but the idea of UNIX utilities on 
> Windows is not a new thing with WSL; it's been around for a quarter 
> century via the UNIX Subsystem for Windows, which was built in to 
> premium editions of Windows (e.g. Windows 7 Enterprise/Ultimate, which 
> is what I still use).
>
> https://en.wikipedia.org/wiki/Windows_Services_for_UNIX
>
> Then, you can run tools like grep, sed, etc. from Command Prompt. No
> emulators, virtualization, etc. is being used:
>
> C:\Users\interlinked>grep
> usage: grep [-abcEFGHhIiLlnoPqRrSsUvwx] [-A num] [-B num [-C[num]]
>           [-e pattern] [-f file] [--binary-files=value] [--context[=num]]
>           [--line-buffered] [pattern] [file ...]

No, that's definitely not the package I have.  For instance:

C:\>grep
Usage: grep [OPTION]... PATTERN [FILE]...
Try `grep --help' for more information.

C:\>grep --help
Usage: grep [OPTION]... PATTERN [FILE] ...
Search for PATTERN in each FILE or standard input.
Example: grep -i 'hello world' menu.h main.c

Regexp selection and interpretation:
  -E, --extended-regexp     PATTERN is an extended regular expression
  -F, --fixed-strings       PATTERN is a set of newline-separated strings
  -G, --basic-regexp        PATTERN is a basic regular expression
  -e, --regexp=PATTERN      use PATTERN as a regular expression
  -f, --file=FILE           obtain PATTERN from FILE
  -i, --ignore-case         ignore case distinctions
  -w, --word-regexp         force PATTERN to match only whole words
  -x, --line-regexp         force PATTERN to match only whole lines
  -z, --null-data           a data line ends in 0 byte, not newline

Miscellaneous:
  -s, --no-messages         suppress error messages
  -v, --invert-match        select non-matching lines
  -V, --version             print version information and exit
      --help                display this help and exit
      --mmap                use memory-mapped input if possible

Output control:
  -b, --byte-offset         print the byte offset with output lines
  -n, --line-number         print line number with output lines
  -H, --with-filename       print the filename for each match
  -h, --no-filename         suppress the prefixing filename on output
  -q, --quiet, --silent     suppress all normal output
      --binary-files=TYPE   assume that binary files are TYPE
                            TYPE is 'binary', 'text', or 'without-match'.
  -a, --text                equivalent to --binary-files=text
  -I                        equivalent to --binary-files=without-match
  -d, --directories=ACTION  how to handle directories
                            ACTION is 'read', 'recurse', or 'skip'.
  -r, --recursive           equivalent to --directories=recurse.
  -L, --files-without-match only print FILE names containing no match
  -l, --files-with-matches  only print FILE names containing matches
  -c, --count               only print a count of matching lines per FILE
  -Z, --null                print 0 byte after FILE name

Context control:
  -B, --before-context=NUM  print NUM lines of leading context
  -A, --after-context=NUM   print NUM lines of trailing context
  -C, --context[=NUM]       print NUM (default 2) lines of output context
                            unless overridden by -A or -B
  -NUM                      same as --context=NUM
  -U, --binary              do not strip CR characters at EOL (MSDOS)
  -u, --unix-byte-offsets   report offsets as if CRs were not there (MSDOS)

`egrep' means `grep -E'.  `fgrep' means `grep -F'.
With no FILE, or when FILE is -, read standard input.  If less than
two FILEs given, assume -h.  Exit status is 0 if match, 1 if no match,
and 2 if trouble.

Report bugs to <[email protected]>.

---------------------------------------

There are lots of other utilities as well, and they've been
enabling me to make a Windows command prompt act sufficiently
Unixy to take some of the pain out of it.

-- 
/~\  Charlie Gibbs                  |  No artificial
\ /  <[email protected]>      |  intelligence was
 X   I'm really at ac.dekanfrus     |  used in the creation
/ \  if you read it the right way.  |  of this post.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.