Hosts Commander v1.6.2 [2020/11/21] — модификация hosts из командной строки

Данная программа призвана максимально облегчить работу с файлом hosts из консоли. Если вы любите консоль, и вам приходится время от времени забирался в глубину системных директорий, чтобы что-то изменить в этом файле — Hosts Commander точно придётся вам по душе.

Скачать: hostscmd.zip (21КБ). Исходный код →

Возможности

  • Операции добавления, удаления, отключения и скрытия хостов
  • Отображение хостов из hosts по маске
  • Операции над хостами по маске
  • Создание резервных копий hosts и откат последней операции
  • Поддержка IDN (позволяет работать с русскими доменами, которые в файле hosts хранятся в виде xn--)
  • Поддержка IPv6 адресов
  • Поддержка алиасов (несколько доменных имён в строке)
  • Сохранение исходного оформления и кодировки файла hosts
  • Большое количество алиасов для каждой команды (кому как удобнее)
  • Встроенный командный интерпретатор для тесной работы с hosts
  • Поддерживает работу под Windows XP/7+ (.NET 4), Linux и Mac OS X (Mono 2.8+)

Как этим пользоваться?

В Windows можно предварительно скопировать файл hosts.exe в директорию Windows (c:\windows\), после чего утилита всегда будет готова к работе в консоли или по нажатию Win+R. Для работы в Windows XP и 7 необходимо установить .NET Framework 4 (предустановлен в Windows 8 и 10). В Windows 7+ для запуска командного интерпретатора hosts.exe (запуск без параметров) достаточно дать добро UAC, однако для корректного отображения результата работы прямого вызова команд (вне встроенного командного интерпретатора) hosts.exe необходимо запускать из консоли с правами администратора. Чтобы быстро запустить такую консоль, нажмите клавишу Win (откроется пуск), в строку поиска введите cmd и нажмите Ctrl+Shift+Enter. Если же запускать команды из консоли без прав администратора, hosts.exe будет запускаться в отдельном консольном окне, а по окончанию работы будет сразу закрываться.

Для запуска под Linux или MacOS необходимо использовать Mono. Выполнение приложения производится командой вида: mono hosts.exe command param1 param2. В отличие от запуска под Windows, приложение не требует прав суперпользователя для операций, не связанных с изменением файла hosts.

hosts
  • Запускает командный интерпретатор для тесной работы с hosts
  • В этом режиме все описанные ниже команды следует вводить без hosts
  • Для выхода можно использовать команды exit и quit
hosts list [--all] <mask>
  • Без параметров отображает только включённые и не скрытые хосты
  • С флагом --all также отображает отключённые и скрытые
  • Алиасы: view, select, ls
  • Пример: list vk
  • Пример: list --all local*
hosts add <host> <aliases> <addr> # <comment>
  • Добавляет новый хост, <addr> по умолчанию 127.0.0.1
  • Парамер <aliases> может отсутствовать
  • Параметры до # могут иметь произвольный порядок
  • Всё что после # — комментарий
  • Алиасы: new
  • Пример: hosts add myhost.dev www.myhost.dev
  • Пример: hosts add another.dev 192.168.1.1 # Remote host
  • Пример: hosts add домен.рф # IDN host demo
hosts upd <host|mask> <addr> # <comment>
  • Обновляет IP адрес и комментарий хоста
  • Всё что после # — комментарий
  • Алиасы: update, change
  • Пример: hosts upd myhost.dev # new comment
  • Пример: hosts upd another.dev 192.168.1.1
hosts set <host|mask> <addr> # <comment>
  • Добавляет хост или обновляет его IP адрес и комментарий
  • Гибрид add и upd
  • Всё что после # — комментарий
  • Пример: hosts set myhost.dev # new comment
  • Пример: hosts set another.dev 192.168.1.1
hosts rem <host|mask>
  • Удаляет конкретный хост или соответствующие маске
  • Алиасы: rm, del, remove, delete, unset
  • Пример: hosts rem *.local
hosts enable <host|mask>
  • Включает конкретный хост или соответствующие маске
  • Алиасы: on
  • Пример: hosts enable localhost
hosts disable <host|mask>
  • Выключает конкретный хост или соответствующие маске
  • Алиасы: off
  • Пример: hosts disable local?ost
hosts print
  • Выводит оригинальное содержимое файла hosts
  • Алиасы: raw, file
hosts format
  • Форматирует строки в файле
hosts clean
  • Удаляет комментарии и форматирует строки в файле
hosts backup <name>
  • Делает резервную копию файла hosts
  • Параметр <name> не обязателен, по умолчанию он — backup
hosts restore <name>
  • Восстанавливает файл hosts из резервной копии
  • Параметр <name> не обязателен, по умолчанию он — backup
hosts rollback
  • Откатывает последнюю операцию с файлом hosts
hosts empty
  • Создаёт новый hosts файл с одним хостом — localhost
  • Алиасы: recreate, erase
hosts open
  • Открывает файл hosts в текстовом редакторе, ассоциированным с .txt
  • Команда доступна только в Windows
hosts hide <host|mask>
  • Прячет хосты из списка при запуске hosts view
  • Пригодится, если у вас много хостов, которые не хотелось бы всегда видеть перед глазами
hosts show <host|mask>
  • Возвращает хосты в hosts view

История изменений

v1.6.2 [2020/11/21]

  • Исправлена ошибка, которая могла приводить к зависанию при некорректном файле hosts.
  • Комманда "list" использует аргумент "--all" вместо "all", и он может быть как до, так и после маски.
  • Более понятный вывод сообщений от команды "add" в случае повторного добавления уже существующего хоста.
  • Автоматическое снятие флага "только для чтения" с файла hosts перед изменением.
  • Новые алиасы команд: "unset" для "rem", и "erase" для "empty".

v1.6.1 [2019/07/07]

  • Программа собрана под .NET Framework 4.0 (предустановлен в Windows 8 и 10)
  • Косметические изменения

v1.6.0 [2013/10/26]

  • Команда add автоматически удаляет все предыдущие вхождения добавляемых хостов
  • Команда upd может только обновлять существующие записи
  • Команда set может как обновлять существующие записи, так и добавлять новые
  • Команды add, set и upd позволяют добавлять или обновлять одновременно IPv4 и IPv6 адреса за один запуск
  • Нормализация IPv6 адресов, автоматическое приведение к компактному виду
  • Команда recreate переименована в empty
  • Для команды view добавлен алиас ls
  • Другие незначительные изменения

v1.5.1 [2011/11/19]

  • Решена проблема при считывании команд в режиме командного интерпретатора под Mono
  • У команды rem появился алиас rm

v1.5.0 [2011/11/17]

  • Поддержка запуска под Mono на Linux и Mac OS X
  • Право записи в директорию с файлом hosts требуют только команды, изменяющие его содержимое
  • Возможность откатить (rollback) операцию recreate

v1.4.1 [2011/10/24]

  • В командном интерпретаторе набранный по ошибке префикс hosts игнорируется
  • Обновлён вывод команды help

v1.4.0 [2011/10/20]

  • Встроенный командный интерпретатор, который запускается при вызове hosts без параметров
  • Команда hosts open открывает hosts в программе, ассоциированной с .txt
  • Команда hosts view упрощена, по умолчанию отображает только включённые и не скрытые хосты

v1.3.0 [2011/02/06]

  • Поддержка IDN (можно создавать русскоязычные домены)
  • Поддержка IPv6 адресов
  • Поддержка алиасов (несколько доменных имён в строке)
  • Новая операция rollback для отмены работы последней команды
  • add и set — разные команды (добавление и обновление соответственно)
  • Команда add сама догадывается о порядке параметров, всё что после # — комментарий
  • Возможность создавать несколько резервных копий hosts, задавая имя копии

v1.2.0 [2010/12/03]

  • Программа требует для запуска администраторские права
  • Сохраняется исходная кодировка hosts (актуально для русских Windows)
  • Возможность создания стандартного hosts файла (recreate)

v1.1.0 [2010/12/01]

  • Совместимость с .NET 3.5
  • Автоматическая резервная копия файла hosts при первом запуске
  • Возможность создания резервной копии (backup) и восстановления (restore)
  • Возможность быстро открыть файл hosts в блокноте

v1.0.0 [2010/11/30]

  • Первая версия, написана полностью на C# для .NET 4.0
  • Операции добавления, удаления, отключения хостов
  • Сохранение исходного оформления файла hosts
  • Возможность скрытия заданных хостов при стандартном просмотре
  • Операции над хостами по маске
  • Простые выборки из hosts по атрибутам и маске (view)
  • Большое количество алиасов для каждой команды (кому как удобнее)

v0.1.0 [2009/07/22]

  • Прототип на C++
  • Продумана общая концепция программы
  • Так и не была реализована до конца

v0.0.0 [2009/01/28]

  • Оформлена идея программы и сразу же отправлена в «долгий ящик»

Ссылки

  1. #2
    VEG Автор

    Приведённая вами команда должна выдавать ошибку по крайней мере в последней версии Hosts Commander. Обновитесь.

    http:// не является частью хоста. Хосты нужно указывать с www и без, если нужно добавить в hosts оба варианта:

    hosts add windowsupdate.com www.windowsupdate.com # WindowsUpdate

    Пробелы — это не ошибка, а часть форматирования. Когда хостов много, то они будут выглядеть как табличка.

Комментарии временно закрыты.