Skip to content


Полезные команды windows

Ниже приведены некоторые полезные для системных администраторов команды, которые можно использовать в .bat-файлах и различных скриптах для автоматизации.

  1. Посмотреть ip-адреса сетевых интерфейсов:
    netsh interface ip show address
  2. Поменять ip-адрес интерфейса с именем Internal на 192.168.1.42, установить маску подсети 255.255.254.0 (/23) и установить шлюз по умолчанию 192.168.1.1 с метрикой 1:
    netsh interface ip set address name="Internal" static 192.168.1.42 255.255.254.0 192.168.1.1 1
  3. Установить для интерфейса с именем Internal DNS-сервера 192.168.1.10 и 192.168.1.11:
    netsh interface ip set dns name="Internal" static 192.168.1.10
    netsh interface ip add dns "Internal" 192.168.1.11
  4. Получить mac-адреса сетевых интерфейсов:
    getmac
  5. Командый файл для закачки множества файлов с похожими именами (в результате в текущую директорию будут скачиваться файлы по ссылкам https://avz.org.ua/wp/films/Univer_1.avi, https://avz.org.ua/wp/films/Univer_2.avi, ..., https://avz.org.ua/wp/films/Univer_20.avi):
    @echo off
    set URL=http://avz.org.ua/wp/films/Univer
    FOR /L %%I IN (1,1,20) DO wget %URL%_%%I.avi

    Обратите внимание, что переменная цикла должна состоять из одной буквы, иначе работать не будет, выдавая ошибку типа "Непредвиденное появление: %Ind" (у меня полчаса ушло, чтобы понять в чем косяк, когда я пытался использовать Ind в качестве итератора :/ Зато help по команде FOR перечитал вдоль и поперек :) пока пытался постичь сей феномен). После этого с особой теплотой вспоминал bash, который как скриптовый язык намного удобнее и мощнее этого убогого поделия мелкомягких. Утилитку wget под windows можно скачать, например, здесь.

  6. Узнать размер файла: создаем файл, к примеру, с именем flen.bat следующего содержания
    set FLEN=%~z1
    echo %FLEN%

    Запускаем файл flen.bat, передавая ему в качестве аргумента имя файла, размер которого хотим получить. Подробнее о конструкциях, подобных %~z1 можно почитать в справке по команде call, набрав в командной строке call /?

  7. Переименование файлов в текущем каталоге с заданным расширением так, чтобы имена образовали последовательность чисел, начиная с заданного:
    @echo off
    if .%1==. goto usage
    set n=%2
    if .%n%==. set n=0
    set tempdir=$tmp$.$x$
    mkdir %tempdir%
    for %%i in (%1) do call :renfile "%%i"
    move %tempdir%\%1 . >nul
    rmdir %tempdir%
    goto :EOF
     
    :renfile
    move %1 %tempdir%\%n%%~x1 > nul
    set /a n+=1
    goto :EOF
     
    :usage
    echo USAGE: RENUM *.jpg ^

    Конструкция %~x1 выделяет из переменной %1 (1-ый параметр командного файла) фрагмент имени файла, соответствующий его расширению (см. call /?). Метка :EOF означает конец файла.

  8. Экспортирование определённого раздела реестра в файл с именем putty.reg:
    regedit /e putty.reg "HKEY_CURRENT_USER\Software\SimonTatham\PuTTY"
  9. Иногда бывает, что в Windows XP служба брандмауэра (Internet Connection Firewall) куда-то девается из списка служб и/или её невозможно запустить (вылазит сообщение об ошибке "Вследствие неопределенной ошибки не удается отобразить параметры брандмауэра Windows"). Восстановить службу "Брандмауэра Windows / Общий доступ к Интернету (ICS)" можно следующей командой:
    Rundll32 setupapi,InstallHinfSection Ndi-Steelhead 132 %windir%\inf\netrass.inf
  10. Отключение административных общих ресурсов (C$, D$ и т.д.). При запущенной службе "Сервер" есть возможность при известном пароле пользователя с правами администратора получить по сети доступ к любому файлу на жестком диске. Конечно, такой доступ еще должен быть разрешен в брандмауэере. А поскольку многие не затрудняют себя установкой паролей более сложных, чем "123", и часто отключают встроенный в windows брандмауэер, такую возможность часто желательно отключать. Для отключения шаринга административных общих ресурсов следует запустить редактор реестра (regedit) и создать в разделе HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters параметр AutoShareWks типа DWORD и установить его значение в 0. Соответствующий .reg-файл можно скачать по ссылке выше.
  11. Ну и напоследок список системных переменных Windows
    %ALLUSERSPROFILE% - размещение профиля «All Users»
    %APPDATA% - используемое по умолчанию размещение данных приложений
    %CD% - путь к текущей папке
    %COMPUTERNAME% - имя компьютера
    %ERRORLEVEL% - код ошибки последней использовавшейся команды. Значение, не равное нуля, обычно указывает на наличие ошибки
    %HOMEDRIVE% - имя диска локальной рабочей станции, связанного с основным каталогом пользователя. Задается на основании расположения основного каталога
    %LOGONSEVER% - имя контроллера домена, который проверял подлинность текущей сессии
    %NUMBER_OF_PROCESSORS% - количество процессоров, установленных на компьютере
    %OS% - имя операционной системы
    %PROCESSOR_ARCHITECTURE% - архитектура процессора. Пока доводилось встречать значения: x86, IA64
    %PROCESSOR_IDENTFIER% - описание процессора
    %PROCESSOR_LEVEL% - номер модели процессора, установленного на компьютере
    %PROCESSOR_REVISION% - номер модификации процессора
    %RANDOM% - произвольное десятичное число от 0 до 32767 (работает в cmd.exe)
    %SYSTEMDRIVE% - имя диска, содержащего корневой каталог Windows XP (т.е. системный каталог)
    %SYSTEMROOT% - размещение системного каталога Windows XP
    %TEMP% и %TMP% - временные папки, по умолчанию используемые приложениями, которые доступны пользователям, выполнившим вход в систему
    %TIME% - Возвращает текущее время. Использует тот же формат, что и команда time /t, создается командой Cmd.exe
    %USERDOMAIN% - имя домена, содержащего список учетных записей пользователей
    %USERNAME% - имя пользователя, выполнившего вход в систему
    %USERPROFILE% - размещение профиля для текущего пользователя
    %WINDIR% - размещение каталога операционной системы

Posted in Howto, Windows.

Tagged with , , .


2 Responses

Stay in touch with the conversation, subscribe to the RSS feed for comments on this post.

  1. Харон says

    netsh diag ping adapter 1
    пинговать маршрутизатор, ДНС-сервер(ы) и собственный АйПи

  2. Лёха says

    Еще вот хочу упомянуть: "control userpasswords2" - вызывает окошко управления пользователями - удобно для быстрой смены пароля.

You must be logged in to post a comment.