GNU on Windows

После нескольких лет работы в консоли (Linux или OS X), возвращаясь в коммандную строку Windows – очень не хватает простейших утилит, типа diff, grep, md5sum, sort, uniq и, конечно же, wget/curl.
Когда-то, в бытность Windows XP пользовался пакетом UnxUtils. Пакет этот, судя по всему, сейчас заброшен и давно не обновлялся. Есть ещё пакет GNUWin32 (для него есть утилита GetGNUWin32, для автоматизации процесса скачивания и установки пакетов GNUWin32). Он посвежее, но последние версии тоже датируются аж 2010-м годом. А ещё этот GNUWin32 показался мне каким-то большим и слишком громоздким.
После небольших поисков был найден ещё один вариант – GNU on Windows. Этот пакет судя по всему основан на GNUWin32, но какие-то программы в нём немного новее, нежели в исходном GNUWin32.

Пакет устанавливается, прописывается в $PATH и мы получаем следующие утилитки:

C:\Users\wakko>gow --version
Gow 0.8.0

C:\Users\wakko>gow --list
Available executables:

  awk, basename, bash, bc, bison, bunzip2, bzip2, bzip2recover, cat,
  chgrp, chmod, chown, chroot, cksum, clear, cp, csplit, curl, cut, dc,
  dd, df, diff, diff3, dirname, dos2unix, du, egrep, env, expand, expr,
  factor, fgrep, flex, fmt, fold, gawk, gfind, gow, grep, gsar, gsort,
  gzip, head, hostid, hostname, id, indent, install, join, jwhois, less,
  lesskey, ln, ls, m4, make, md5sum, mkdir, mkfifo, mknod, mv, nano,
  ncftp, nl, od, pageant, paste, patch, pathchk, plink, pr, printenv,
  printf, pscp, psftp, putty, puttygen, pwd, rm, rmdir, scp, sdiff, sed,
  seq, sftp, sha1sum, shar, sleep, split, ssh, su, sum, sync, tac, tail,
  tar, tee, test, touch, tr, uname, unexpand, uniq, unix2dos, unlink,
  unrar, unshar, uudecode, uuencode, vim, wc, wget, whereis, which,
  whoami, xargs, yes, zip

Нужно только иметь в виду что gnu-тый sort здесь переименован в gsort, для того чтобы не перекрываться sort'ом из Windows. В установленном виде пакет занимает всего 22Мб.
Update: Правда есть в пакете и глючная утилитка, tail из этого пакета не выполняет своих обязанностей, вместо отображения последних строк текстового файла и ожидания дополнения файла, ругается ошибками "Bad file descriptor" и "no files remaining". Поэтому tail лучше всего взять из пакета UnxUtils.
Update 2: А вот отсюда можно взять свежий wget версии 1.16.1.

Добавить комментарий