Ниже приведены некоторые полезные для системных администраторов команды, которые можно использовать в .bat-файлах и различных скриптах для автоматизации.
- Посмотреть ip-адреса сетевых интерфейсов:
-
netsh interface ip show address
-
- Поменять 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
-
- Установить для интерфейса с именем 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
-
- Получить mac-адреса сетевых интерфейсов:
-
getmac
-
- Командый файл для закачки множества файлов с похожими именами (в результате в текущую директорию будут скачиваться файлы по ссылкам ):
-
@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 можно скачать, например, здесь.
-
- Узнать размер файла: создаем файл, к примеру, с именем flen.bat следующего содержания
-
set FLEN=%~z1
-
echo %FLEN%
Запускаем файл flen.bat, передавая ему в качестве аргумента имя файла, размер которого хотим получить. Подробнее о конструкциях, подобных %~z1 можно почитать в справке по команде call, набрав в командной строке call /?
-
- Переименование файлов в текущем каталоге с заданным расширением так, чтобы имена образовали последовательность чисел, начиная с заданного:
-
@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 ^<start number^>
Конструкция %~x1 выделяет из переменной %1 (1-ый параметр командного файла) фрагмент имени файла, соответствующий его расширению (см. call /?). Метка :EOF означает конец файла.
-
- Экспортирование определённого раздела реестра в файл с именем putty.reg:
-
regedit /e putty.reg "HKEY_CURRENT_USER\Software\SimonTatham\PuTTY"
-
- Иногда бывает, что в Windows XP служба брандмауэра (Internet Connection Firewall) куда-то девается из списка служб и/или её невозможно запустить (вылезит сообщение об ошибке «Вследствие неопределенной ошибки не удается отобразить параметры брандмауэра Windows»). Восстановить службу «Брандмауэра Windows / Общий доступ к Интернету (ICS)» можно следующей командой:
-
Rundll32 setupapi,InstallHinfSection Ndi-Steelhead 132 %windir%\inf\netrass.inf
-
- Отключение административных общих ресурсов (C$, D$ и т.д.). При запущенной службе «Сервер» есть возможность при известном пароле пользователя с правами администратора получить по сети доступ к любому файлу на жестком диске. Конечно, такой доступ еще должен быть разрешен в брандмауэере. А поскольку многие не затрудняют себя установкой паролей более сложных, чем «123″, и часто отключают встроенный в windows брандмауэер, такую возможность часто желательно отключать. Для отключения шаринга административных общих ресурсов следует запустить редактор реестра (regedit) и создать в разделе HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanmanserver\parameters параметр AutoShareWks типа DWORD и установить его значение в 0. Соответствующий .reg-файл можно скачать по ссылке выше.
- Ну и напоследок список системных переменных 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% — размещение каталога операционной системы
Также рекомендую почитать статью о дефрагментации базы данных Active Directory, в которой приведены скриншоты, а также подробно расписаны все необходимые действия.
Популярность: 15%

Комментариев: 2
Чтобы быть всегда в курсе здесь происходящего, Вы можете подписаться на RSS feed для комментариев на эту заметку.
netsh diag ping adapter 1
пинговать маршрутизатор, ДНС-сервер(ы) и собственный АйПи
Еще вот хочу упомянуть: «control userpasswords2″ — вызывает окошко управления пользователями — удобно для быстрой смены пароля.