Другие примеры bat/cmd файлов


Определение разрядности операционной системы



IF %PROCESSOR_ARCHITECTURE% == x86 ( if %PROCESSOR_ARCHITEW6432% NOT DEFINED ( set os=32 ) ) else ( set os=64 ) echo %os%


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

Определение даты биоса



rem Written by Rob van der Woude rem Idea by ComputerHope rem http://www.computerhope.com/rdebug.htm :: Create temporary DEBUG script to read BIOS date > BIOSDATE.DBG ECHO D FFFF:0005 L 8 >> BIOSDATE.DBG ECHO Q for /f "tokens=9 delims= " %%I in ^ ( 'DEBUG ^< BIOSDATE.DBG ^| FIND "/"' ) do ( set DTBIOS=%%I ) echo BIOS date: %DTBIOS%

Здесь возможно обойтись без промежуточного файла BIOSDATE.DBG

for /f "tokens=9 delims= " %%I in ^ ( '^(ECHO D FFFF:0005 L 8 ^& ECHO Q ^) ^| DEBUG ^| FIND "/"' ) ^ do ( set DTBIOS2=%%I ) echo BIOS date: %DTBIOS2%


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

Пинг подсети

Для получения списка активных IP подсети необязательно пользоваться сетевыми сканерми. В большинстве случаев достаточно выполнить bat файл:

@echo off setlocal enabledelayedexpansion for /l %%I in (1,1,254) do ( 1>nul ping -n 1 192.168.1.%%I && echo IP 192.168.1.%%I - OK )


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

Выгрузить файл по FTP

Для выгрузки файла arhive.zip, лежащего по локальному адресу d:\toupload на ftp.celitel.info в папку на сервере folders с логином и паролем для доступа по FTP login и password следует выполнить скрипт:


( echo login echo password echo lcd d:\oupload echo cd folders echo send arhive.zip echo bye )>ftp.txt ftp -s:ftp.txt ftp.celitel.info del ftp.txt /q
Ознакомиться с подкомандами FTP можно, например, тут

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

Определение свободного места на томе



@echo off setlocal ENABLEEXTENSIONS call :kBytesFree pause exit :kBytesFree drive ret -- returns the free space of :: a drive in kilobytes :: -- drive [in] - drive letter, default is c: :: - ret [out,opt] - varref returns number of bytes free :$created 20060101 :$changed 20080219 :$categories FileInfo :$source http://www.dostips.com SETLOCAL SET "drive=%~1" IF "%drive%"=="" SET "drive=C:" FOR /f "tokens=3 delims= " %%a ^ in ('"dir %drive%\|find /i "bytes free""') do set free=%%a IF "%free%"=="" ( FOR /f "tokens=3 delims= " %%a in ^ ('"dir %drive%\|find /i "байт свободно""') do set free=%%a ) SET "free=%free:,=%" &rem eleminate commas in number SET "free=%free:.=%" &rem eleminate dots in number SET "free=%free: =%" &rem eleminate blank in number SET "free=%free:~0,-3%" &rem divide by 1000 by cutting rem off the last 3 digits ( ENDLOCAL & REM RETURN VALUES IF "%~2" NEQ "" (SET "%~2=%free%") ELSE echo.%free% ) EXIT /b

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

Получение случайного числа из заданного диапазона

Переменная %random% дает случайное десятичное число в интервале от 0 до 32767. Для получения числа в требуемом диапазоне следует выполнить несложные арифметические действия:

SET /A RND=%MIN%+(%MAX%-%MIN%+1)*%random%/32768


Для вопросов, обсуждений, замечаний, предложений и т. п. можете использовать раздел форума этого сайта (требуется регистрация).






  TopList Rambler Top100 my counter Valid XHTML 1.0 Strict Valid CSS Rambler Top100

Фитотерапия Молитвы Водолечение Юмор Форум Кладовка link О авторе

Фитотерапия Молитвы Водолечение Юмор Форум Кладовка Ссылки О авторе Отправить сообщение Карта сайта Поиск по сайту Главная страница

Copyright © 1999 - 2017  Бронислав Краснер