Как создать BAT-файл в Windows 11/10 (свой скрипт для запуска программ (игр) с высоким приоритетом, очистки папок, форматирования дисков, флешек и пр.)

Автор: Alexandr, 24.09.2021 Рубрики: Windows 10, Windows 11

BAT-файлДоброго дня!

На меня тут недавно "наехали" (в хорошем смысле 😊): "Дескать... говоришь вот создать BAT-файл*, а как это сделать-то? Учишь непонятно чему... лишь плохому...".

* Для справки.

BAT-файл — текстовый файл со списком команд. При его запуске (открытии) — интерпретатор ОС выполняет их одну за одной. Это очень удобно для выполнения повторяющихся задач (например, если вам нужно запускать каждый раз игру с высоким приоритетом, или чистить определенную папку, и др.).

*

Собственно, в рамках сегодняшней статьи решил исправиться — кратко показать, как их создавать, и дать несколько примеров для решения самых популярных рутинных задач (довольно часто для этого BAT'ники и используют).

Думаю, что многие пользователи смогут слегка до-корректировать мои примеры и создадут для себя вполне рабочие BAT-файлы. 😉

Итак...

 

*

Создание BAT файлов: на примерах

Основы! С чего начать (Вариант 1: проверка пинга)

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

ШАГ 1

Первым делом необходимо создать самый обычный текстовый файл (такой же, как вы создаете в блокноте). Достаточно кликнуть правой кнопкой мыши по любому свободному месту на рабочем столе и выбрать в меню "Текстовый файл" (Text Document). 👇

Создаем текстовый документ

Создаем текстовый документ

 

ШАГ 2

Название файла у этого текстового документа может быть любым (но лучше использовать англ. символы).

Далее следует открыть этот файл и вписать в него нужные команды. В своем примере я впишу только одну (если вы делаете это впервые — рекомендую повторить ее вместе со мной):

ping ya.ru -t 

Разумеется, файл нужно сохранить. Кстати, вместо ya.ru можно указать google.ru или любой другой адрес (обычно, многие указывают свой игровой сервер, и запускают этот BAT'ник, когда в игре наблюдаются лаги).

Копируем в него нашу команду и сохраняем файл.

Копируем в него нашу команду и сохраняем файл.

 

ШАГ 3

Затем обратите внимание на расширение файла — у текстового файла оно ".TXT". Кстати, если у вас не отображаются расширения — можете 📌 прочитать эту заметку или просто введите в командной строке две вот эти команды (последовательно):

reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v HideFileExt /t REG_DWORD /d 00000000 /f

taskkill /F /IM explorer.exe & start explorer

*

Нам нужно переименовать файл так, чтобы вместо ".TXT" — было новое расширение ".BAT"!

Меняем расширение TXT на BAT

Меняем расширение TXT на BAT

 

ШАГ 4

Теперь достаточно кликнуть по "нашему" файлу правой кнопкой мыши и запустить его от имени администратора — автоматически появится окно командной строки с проверкой пинга. Удобно? Вполне! 👌

Идет проверка пинга!

Идет проверка пинга!

 

ШАГ 5

Чтобы отредактировать BAT-файл (и каждый раз не переименовывать его туда-сюда) — рекомендую вам установить блокнот Notepad++ (уже ранее добавлял его в подборку).

После установки Notepad++ — достаточно кликнуть ПКМ по BAT-файлу — и в появившемся меню выбрать опцию редактирования...

Редактировать BAT

Редактировать BAT

 

*

Вариант 2: запуск игры с высоким приоритетом + откл. авто-поиска Wi-Fi сетей

Этот скрипт рекомендуется попробовать пользователям ноутбуков, кто играет в сетевые игры.

*

Этот BAT-файл я создал на одном своем рабочем ноутбуке (он уже довольно "старый", и нередко притормаживал при запуске игр). Однако, благодаря нескольким строкам кода — удается вполне комфортно играть. 👌

Что за строки нужно добавить в BAT (выделены коричневым):

cmd.exe /c start /high /D "C:\Games\Counter-Strike 1.6\" hl.exe -game cstrike -appid 10 -nojoy -noipx -noforcemparms -noforcemaccel
netsh wlan set autoconfig enabled=no interface="Wi-Fi"
pause
netsh wlan set autoconfig enabled=yes interface="Wi-Fi"
pause

*

Что он делает:

  1. запускает игру CS с высоким приоритетом (это позволяет снизить кол-во притормаживаний в играх). Разумеется, вместо строки "C:\Games\Counter-Strike 1.6\" hl.exe — вы можете указать свою игру и ее расположение;
  2. отключает авто-поиск Wi-Fi сетей (это снижаем пинг и увел. скорость сети // правда не дает подключаться к другим Wi-Fi сетям). Кстати, вместо "Wi-Fi" — нужно указать название своего адаптера (посмотрите так: нажмите Win+R, и используйте команду ncpa.cpl);

    Название адаптера

    Название адаптера

  3. далее идет пауза - скрипт будет ждать нажатия какой-нибудь клавиши (примечание: т.к. у нас будет запущена игра — это окно скроется из вида, и оно не будет нам мешать);
  4. когда через часик-другой игра будет закрыта, — вы увидите окно командной строки и нажмете какую-нибудь клавишу — будет снова включен авто-поиск Wi-Fi сетей. Удобно? 😉

 

*

Вариант 3: создание резервной копий файлов и точки восстановления в Windows

Приведу наиболее простую и довольно надежную команду для создания резервных копий файлов и папок:

xcopy C:\Games D:\backup /f /i /y /s

*

Она копирует один каталог в другой (просто, без вопросов и расспросов). Если вам нужно скопировать 2 или 3 (или более) каталогов — просто создайте несколько подобных строк.

Расшифровка:

  1. C:\Games — тот каталог, который будем копировать (все подкаталоги и файлы из них тоже будут скопированы);
  2. D:\backup — тот каталог, куда будет всё скопировано;
  3. /f — выводит имена файлов (чтобы вы видели, что происходит);
  4. /i — создает новый каталог, если на диске "D:" нет каталога "backup" (см. строку выше);
  5. /y — перезаписывает старые файлы новыми;
  6. /s — копирует каталоги и подкаталоги, если в них есть какие-то файлы.

 

*

Для создания точки восстановления можно использовать следующий код:

wmic.exe /Namespace:\\root\default Path SystemRestore Call CreateRestorePoint "MyRestorePoint", 100, 7
pause

После запуска подобного BAT-файла — точка восстановления будет создана в авто-режиме! Это очень удобно делать перед установкой нового софта, железа и пр. (чтобы проверить есть ли точка — нажмите Win+R, и используйте команду: rstrui). 👇

Если точки нет (как в моем примере ниже) — прочитайте это!

Точки восстановления создаются!

Точки восстановления создаются!

 

 

*

Вариант 4: очистка временных папок

Здесь есть несколько вариантов "подхода". Я приведу один из самых простейших, см. 4 строки ниже. 😉

del /q /f /s %WINDIR%\Temp\*.*
del /q /f /s %SYSTEMDRIVE%\Temp\*.*
del /q /f /s %Tmp%\*.*
del /q /f /s %Temp%\*.*

 

📌 Что это означает:

*

📌 Что можно еще добавить в наш скрипт:

 

 

*

📌 Вариант 5: форматирование диска/флешки (с ручным выбором буквы, имени и файловой системы) 

Этот мини-скриптик может быть весьма полезный (например, если у вас "подвисает" проводник при обращении к флешки // или не запускается управление дисками).

*

Собственно, здесь все делается аналогично. Чтобы не удлинять процесс — вот вам сразу же сам скриптик (ссылка на RAR-архив с BAT-файлом), который "набросал" за 5 мин. (и еще 10 потратил на проверку 😉). Его текст (выделен коричневым):

 

@echo off
wmic logicaldisk get name, VolumeName, Size, FileSystem, NumberOfBlocks, description
set /p adisk="Введите букву диска/флешки для форматирования: "
set /p named="Введите имя для диска/флешки (любое, например, my_disk): "
set /p number="Нажмите l — для формат. в NTFS, 2 — в FAT32, 3 — для в ExFAT. Ваше число: "

if "%number%" == "1" (
format %adisk%: /FS:NTFS /Q /V:%named%
pause
exit /b
)

if "%number%" == "2" (
format %adisk%: /FS:FAT32 /Q /V:%named%
pause
exit /b
)

if "%number%" == "3" (
format %adisk%: /FS:ExFAT /Q /V:%named%
pause
exit /b
)

 

*

Он довольно простой, но будьте с ним аккуратны! Если укажите не ту букву накопителя — можно легко отформатировать не тот диск...

Как он работает (запускать под именем администратора):

  1. сначала он показывает информацию по всем подключенным дискам (и их буквы);
  2. далее запрашивает букву диска/флешки, которую нужно отформатировать (в своем примере я ввел G и нажал Enter);
  3. затем нужно ввести название диска — может быть любым (главное, чтобы название было коротким и лучше использовать только латиницу!). Я использовал my_flash;
  4. после выбрать файловую систему (их тут три), и нажать Enter;
  5. если все введено корректно — диск/флешка будет отформатирована! 👌
Пример работы BAT-файла

Пример работы BAT-файла для форматирования флешки

 

*

Как запускать BAT-файл от имени администратора (и по расписанию)

Способ 1

Самый простой вариант — нажать ПКМ по BAT-файлу и в контекстном меню выбрать "Запуск от имени администратора". См. скрин ниже. 👇

Нажать ПКМ по BAT-файлу

Нажать ПКМ по BAT-файлу

 

Способ 2

Можно нажать ПКМ по BAT-файлу и создать для него ярлык на рабочем столе. См. скрин ниже. 👇

Создание ярлыка к BAT-файлу

Создание ярлыка к BAT-файлу

 

Далее в свойства ярлыка поставить галочку, что задача должна выполняться от имени администратора. Таким образом при каждом двойном клике по этому ярлыку — BAT'ник будет запускаться от админа. 👌

Свойства ярлыка — запускать с админ. правами

Свойства ярлыка — запускать с админ. правами

 

Способ 3

В планировщике заданий Windows (чтобы его открыть нажмите Win+R, и используйте команду control schedtasks) можно настроить запуск BAT-файла в нужное время и с нужными правами (т.е. автоматически). Это может быть весьма удобно, и серьезно упростить работу со множеством задач (очистка Windows от мусора, создание бэкапов и пр.) — точно никогда не забудете!

Более подробно о том, как создать задачу в планировщике заданий — я 📌 рассказывал в этой заметке.

Триггеры - когда выполнять задачу, расписание

Триггеры - когда выполнять задачу, расписание

 

*

Если при выполнении BAT-файла появятся крякозабры вместо русского текста 👌

Чаще всего это бывает с теми BAT, в которых есть русские символы и выставлена "неправильная" кодировка (например, они часто встречаются в пути к папке: "C:\Games\Лучшие игры"). Кстати, в этом случае BAT-файл работать не будет: после попытки выполнения операции с "крякозабрами" — появится ошибка и окно CMD будет закрыто...

*

Что можно сделать:

  1. первое: попробуйте в начало BAT-файла добавить код @chcp 1251 (и сохраните файл!);
  2. второе: установите блокнот Notepad++ и задействуйте OEM-866 кодировку в меню: "Кодировки/Кодировки/Кириллица/OEM-866" (предварительно, для бэкапа, скопируйте весь текст текущего документа в другой файл).
OEM 866 — пример, что нужно включить

OEM 866 — пример, что нужно включить // программа Notepad++

*

👉 Доп. в помощь!

Вместо текста иероглифы, квадратики и крякозабры (в браузере, Word, тексте, окне Windows).

 

*

Дополнения по теме - приветствуются!

Удачи!

👋

6 комментариев

  1. Кэп:

    Начиная, по-моему, с семерки винда использует файлы *.cmd, а батники только олдфаги все ещё делают :smile:

  2. Турисаз:

    Удивил... Смастерил батники для пинга инфраструктуры (не лежит ли некий сервер, не лежит ли некий свитч) и для чистки очереди документов.

  3. radiola:

    Как очистить папку по пути:
    C:\Users\Администратор\AppData\Local\Temp
    _________________________________________
    Часто папка %WINDIR%\Temp\ девственно чиста,
    а из Local\Temp килограммы мусора выгребаю.

    1. Alexandr:

      Например, так: del /q /f /s C:\Users\alex\AppData\Local\Temp\*.*

  4. Василий:

    Автор, а попробуй батник пинговки так и обозвать ping.bat, тебя ждет откровение... И нафига ставить сторонние блокноты, если можно тупо кликнуть ПКМ на батнике и выбрать "изменить". Такое ощущение, что слегка продвинутый юзверь надергал материал с инета и запилил, не вникая статью :lol:

    1. Alexandr:

      Доброго дня.
      Мой предложенный блокнот позволяет легко решить вопрос с кодировкой (+ подсветка кода), ваш вариант может это сделать? Если не понимаете о чем речь, попробуйте использовать русские символы в bat-файле...

Написать комментарий 📎

 

Прикрепить картинку, скрин:

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:

  • Интересное
  • Оптимизируем и ускоряем
  • Удаляем вирусы
  • Настраиваем звук
  • Содержание статьи
  •