Окунитесь в программирование пакетных файлов для Windows

Это мирская жизнь, которая тянет день. Простые, повторяющиеся задачи, которые истощают вашу жизненную силу. Мы либо делаем их неохотно, либо пренебрегаем ими, пока они не создадут еще большую проблему. Так не должно быть!

На компьютерах с Windows вы можете создавать простые маленькие программы, называемые пакетными файлами.

, что позаботится об этих утомительных задач.

В этом смысл автоматизации, не так ли? Чтобы установить и забыть, как говорят рекламные ролики. Давайте посмотрим на части пакетного файла и как создать несколько колпачков для ваших дел.

Что такое пакетный файл?

Дос команды в окне команд

Еще до Windows все было достигнуто путем ввода команд вместо того, чтобы указывать и нажимать. Версия Microsoft называется MS-DOS (дисковая операционная система Microsoft), а команды называются командами DOS.

,

Иногда были задачи, в которых все, что вам нужно было сделать, это вводить команды в одном и том же порядке, каждый раз. Вы можете создать файл этих команд и назвать его что-то вроде BORING_TASKS.BAT. Затем, просто набрав BORING_TASKS.BAT и нажав Войти ключ, этот список команд будет выполнен.

MS-DOS

Когда на сцену вышла Windows, Microsoft все еще зависела от этих командных файлов, чтобы делать вещи в фоновом режиме. Им пришлось оставить возможность запускать эти файлы. Это позволило людям создавать и запускать свои собственные командные файлы.

Пакетные файлы часто становились инструментами для опытных пользователей и системных администраторов.

так. Нет причин, по которым вы также не можете использовать пакетные файлы! Давайте посмотрим на несколько вещей, которые вы могли бы сделать.

Как создать пакетный файл

Все, что вам нужно, это Блокнот, шпаргалка пакетных команд и немного времени и терпения. Откройте Блокнот, напишите нужные команды, затем сохраните файл, но измените Сохранить как тип: поле для Все файлы, и измените расширение файла на .летучая мышь. Это действительно важно. Теперь у вас будет командный файл, который вы сможете использовать по своему усмотрению.

fileRenamer.bat

Если вам нужно внести изменения в командный файл, щелкните по нему правой кнопкой мыши и выберите редактировать. Это откроет его в блокноте, и вы можете редактировать его снова. Просто.

Чтобы освоить основы, пройдите наш раздел Как написать простой командный файл

статья. Давайте рассмотрим несколько задач, которые мы могли бы решить с помощью пакетных файлов.

Ограничить компьютерное время с помощью командного файла

Семейная безопасность Windows

существует с Windows 7 и может справиться с задачей ограничения компьютера

время довольно приятно. Но, возможно, вы захотите настроить компьютер таким образом, чтобы независимо от того, кто входит в систему, он получал определенное количество времени на компьютере до его выключения. Или, может быть, вы хотите использовать компьютер для потоковой передачи радио, но через некоторое время выключите его, если вы уйдете или заснете. Для этого есть пакетный файл!

@echo off
shutdown -s -t 3600

@echo off — Указывает компьютеру не показывать ничего, что идет после него, в командном окне при запуске командного файла.

shutdown — эта команда очевидна, но параметры -s и -t не обязательно очевидны. -s говорит компьютеру действительно выключиться, а не просто выйти (-l) или перезагрузить (-r). Параметр -t указывает компьютеру использовать таймер.

Как только пакетный файл запущен, компьютер начнет считать секунды. В этом примере таймер работает в течение часа, что составляет 3600 секунд. Когда время достигнет 3600 секунд, компьютер выключится. Вы можете изменить это число на что угодно.

компьютерное время

Если вы хотите ограничить продолжительность работы компьютера после входа в систему, сохраните файл shutdown.bat в каталоге автозагрузки. В Windows 7 и более ранних версиях он будет расположен по адресу C: \ Documents and Settings \ Все пользователи \ Пуск, Меню \ Программы \ Автозагрузка. В Windows 8 и 8.1 он расположен по адресу C: \ ProgramData \ Microsoft \ Windows \ Пуск \ Меню \ Программы \ Автозагрузка.

Теперь, когда человек входит в систему, этот пакетный файл автоматически запускается, и таймер начинает отсчет времени. С некоторыми изменениями в Windows Script с VBScript

это также может быть хорошей шуткой в ​​День дурака

,

Удалить все файлы в папке

Если у вас есть программа, которая создает множество файлов журнала в определенном каталоге, это может занять много времени и раздражать, пытаясь удалить их все старомодным способом. Давайте создадим командный файл, который удалит все файлы в папке, даже не задумываясь об этом. Код ниже очень прост и очищает только одну конкретную папку.

cd C:\Folder\Subfolder
del /f/q *

cd — сообщает компьютеру, чтобы он сменил каталог на указанное вами место. В этом примере это C: \ Folder \ Subfolder. Это удалит ВСЕ файлы внутри этой папки. Измените его на любое другое, но убедитесь, что это действительно каталог, который вы хотите очистить, например, папка загрузки.

del — это значит удалить. Параметр / f принудительно удаляет файлы, доступные только для чтения, а параметр / q заставляет компьютер сделать это незаметно. Это означает, что имена всех файлов, которые вы удаляете, не будут распечатываться в командном окне. Звездочка (*) указывает компьютеру удалить ВСЕ файлы. Звездочка является символом подстановки.

удалить файлы с командным файлом

Вы можете уточнить, что вы хотите удалить. Допустим, вы хотите удалить только все текстовые файлы в каталоге, потому что это журналы, которые занимают место. Вместо звездочки в конце команды del, вы можете использовать * .txt. Это говорит о том, чтобы удалить любой файл с расширением .txt. Теперь только эти файлы будут удалены из этого каталога.

cd C:\Folder\SubfolderOne
del /f/q *.txt

Допустим, там много текстовых файлов, и все ваши файлы журнала начинаются с log-dd-mm-yy. Просто используйте звездочку между log и .txt, чтобы она выглядела как log * .txt. Это удалит любой файл, имя которого начинается с log и имеет расширение .txt.

cd C:\Folder\SubfolderTwo
del /f/q log*.txt

Очистить несколько папок? Просто. Добавьте другой раздел, который является таким же, но у вас есть командная точка cd в другую папку. Тогда ваш командный файл выглядит примерно так:

cd C:\Folder\SubfolderOne
del /f/q log*.txt
cd C:\Folder\SubfolderTwo
del /f/q log*.txt

Поиграйте с этим командным файлом, и вы найдете множество творческих способов его использования. Вы можете иметь его как командный файл, который вы запускаете вручную, или вы можете использовать Windows Task Scheduler

чтобы заставить его работать в установленное время время от времени. Вы могли бы даже запустить его при запуске в качестве легкой альтернативы CCleaner

,

Выберите случайное число

Вот хороший маленький пакетный файл, который сгенерирует случайное 4-значное число. Почему вы хотите это сделать? Многие вещи требуют 4-значный код доступа, например, PIN-код для вашей банковской карты. Возможно, вы управляете пользователями в бизнесе, и ваша система контроля доступа использует 4-значный номер. Многие из них делают. Если вы просто попытаетесь вытащить его из головы, вы в конечном итоге создадите пароли, которые не являются случайными. Этот пакетный файл позаботится об этом.

@echo off
:start
set /a ran=%random%
if /i %ran% GTR 9999 goto :start
if /i %ran% LSS 1000 goto :start
echo Batch chose the number %ran%
pause

: start — Создает метку с именем start, которая действует как точка ралли. Каждый раз, когда на нее указывает команда goto, компьютер возвращается к этой точке в сценарии и делает все, что написано в строке после этой метки.

set / a — сообщает компьютеру, что будет новая переменная с номером, параметр / a заставляет его округлить до ближайшего целого числа. Таким образом, если бы значение было 1234,6, оно было бы округлено до 1234.

Имя переменной запускается. Вы можете называть это как хотите, но в некотором смысле для запуска используется случайное число.

% random% — это динамическая переменная, означающая, что каждый раз, когда компьютер сталкивается с ней, он будет присваивать ему новое значение. Динамическая переменная% random% будет генерировать число от 0 до 32767.

Нам нужно 4-значное число, поэтому оно должно быть между 1000 и 9999. Для этого и предназначены следующие 2 строки.

если — это начало условного утверждения — ЕСЛИ это условие верно, ТОГДА что-то делать. В первой строке указывается, что если целое число в переменной run больше (GTR) 9999, перейдите к началу и повторите попытку. Если значение run меньше (LSS) 9999, компьютер перейдет к следующей строке. Вторая строка говорит, что если значение run меньше 1000, перейдите к началу и попробуйте снова. Есть несколько различных операторов, которые мы можем использовать для сравнения чисел в пакетном файле.

лотереи и цифры от Lost

Возможно, вы думаете, что 0001 — это четырехзначное число, и вы были бы правы. Только динамическая переменная% random% не будет генерировать это. Он может сгенерировать одну цифру 1, но он не поместит 3 ведущих нуля. Это ограничивает нас только 8999 4-значными числами. Конечно, этого достаточно для наших целей.

В конце концов, компьютер выдаст число, которое находится в диапазоне от 1000 до 9999. Допустим, он выбрал 4428. В этот момент командный файл будет использовать команду echo для отображения предложения «Пакетный выбор числа 4428». Теперь у вас есть 4-значный случайный номер. Этот процесс идет намного быстрее, чем пытаться объяснить это — ну, менее чем за секунду.

пауза — окно команды остается открытым, пока вы не нажмете клавишу. Это дает вам время записать ваше случайное число.

Переименовать несколько файлов с помощью командного файла

Файлы, загруженные с помощью BitTorrent

часто в их именах много лишних букв. В этом нет ничего плохого, но было бы неплохо, если бы вы могли удалить все эти лишние вещи. Допустим, вы загрузили электронные книги в открытом доступе

и имена файлов все выглядят как BookName.UploaderGuy.PD.epub, где BookName — это название книги. Вы можете использовать этот пакетный файл для удаления этого .UploaderGuy.PD из имени файла.

@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
SET old=.UploaderGuy.PD
SET new=
for /f "tokens=*" %%f in ('dir /b *.epub') do (
SET newname=%%f
SET newname=!newname:%old%=%new%!
move "%%f" "!newname!")

Здесь много чего происходит. Некоторые из них будут иметь смысл, основываясь на том, что мы узнали до сих пор. Это хороший момент, чтобы отослать вас к себе, чтобы углубиться в то, что мы рассмотрели, и начать больше узнавать о силе хорошо созданного пакетного файла. Давайте назовем это самостоятельным учебным временем.

Конец файла

Мы рассмотрели, что такое пакетный файл, основы его создания и несколько примеров полезных. Мы показали вам, где можно найти дополнительную информацию о создании и использовании командных файлов. Надеюсь, мы также повеселились по пути. Удачной подачи!

У вас есть любимая утилита для пакетных файлов, которой вы хотели бы поделиться? Вопросы о том, как настроить эти скрипты для ваших нужд? Знаете другие хорошие ресурсы командных команд? Поделитесь ими в комментариях. Вот где мы все можем учиться и помогать друг другу. В конце концов, мы все вместе.

Кредиты изображений: Система MS-DOS, ограничение по времени, удаление файлов, электронные книги на планшет через Shutterstock, лотереи и билеты из Lost via Flickr.

Ссылка на основную публикацию
Adblock
detector