Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Командная строка, батники, сценарии: bat, cmd

Модерирует : gyra, Maz

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44

Открыть новую тему     Написать ответ в эту тему

Maz



Дед Мазай
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Командная строка, батники\сценарии (bat, cmd)
часть 1 | часть 2 | часть 3 | часть 4 | часть 5 | часть 6
Вопросы, задачи и их решения по работе с командной строкой, файлами, а также сопутствующие ссылки.

Важно: копируя батник через буфер обмена из форума не забывайте удалять пробелы в конце каждой строки, т.к. в некоторых случаях из-за этого программа будет работать неправильно!!! Чтобы не копировались концевые пробелы из форума, жмите на ссылку "Редактировать" в посте, и уже из редактора копируйте батник без пробелов.
 
Примечание: Большие куски кода заключайте в тэг [ more ].  

Смежные темы:
В помощь системному администратору > Автоматизация администрирования
Microsoft Windows > Сценарии Windows

Полезные ссылки:
· Из Windows XP Professional Product Documentation:
> Описание Cmd.exe > Command shell overview
> Using batch files > Using batch parameters > Using filters > Using command redirection operators
 
· Уроки bat-аники (для начинающих): первый и второй
· Курс из 19 лекций "Командная строка и сценарии Windows"
· Уильям Р. Станек - Командная строка Windows. Справочник администратора
 
· Выполнение BAT-скриптов без вызова окна консоли
· cmdow - изменение параметров и видимости дос-окна, Статья в КОМПЬЮТЕРРАONLINE
· Набор GNU утилит для win32
· HS_Packet.7z - Пакет утилит для организации интерфейса в bat-файлах
· blat - отправка почты из консоли
· Easy Batch Builder+Rus+Crack - Редактор BAT файлов.Через графический интерфейс программы вы сможете быстро конструировать пакетные файлы практически любой сложности. (В комплекте есть Лоадер созданный с помощью Sign Of Misery некоторые антивирусы обзывают его вирусом. Вам решать: ставить или не ставить) (ЗЕРКАЛО)
· Простой способ получать текущую дату всегда в одном формате (не зависит от языков и настроек) ещё и ещё
· Переход из 32-битной версии cmd.exe в 64-битную (1) (2)(3)
 
· Архив всевозможных версий cmd.exe (от Windows NT 3.10 до Windows 11 +Win95cmd +ReactOS) и command.com (DOS 5.0 и выше). Старые командные процессоры можно запускать на более новых ОС, хотя не всё может работать корректно. Подробная документация по командам cmd.exe и стандартным утилитам ОС для NT 3.51, NT 5.0 (Windows 2000) и NT 5.2 (Windows Server 2003). Сборник представляет исторический интерес, а также незаменим для тех, у кого появилось желание сделать свои скрипты работоспобными не только на своей версии ОС.
 
· Большой сборник одним архивом: Сотни Win32 утилит командной строки, нетривиальные .cmd файлы, .bat miniperl скрипты (не требующие полноценной установки Perl), FAR Manager с плагинами и настройками, разное для DOS/DOSBox (откуда под Win32 интерес представляют три продвинутых "мультисистемных" .bat файла да ещё, может быть, оболочка Necromancer DOS Navigator с поддержкой LFN и доступом к буферу обмена Windows). Краткие описания всего - в файликах files.bbs

Всего записей: 39608 | Зарегистр. 26-02-2002 | Отправлено: 22:41 20-06-2024 | Исправлено: Maz, 21:52 28-09-2024
westlife



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
greeple

Цитата:
у себя проверить не могу  

для интереса проверил c# так не понимает при передаче из (Get-Process explorer).MainWindowHandle
ошибки нету но и не работает, если указать hwd всем окнам 0xffff то работает с другим параметром 0xA220 вместо 0xF290. еще в выводе (Get-Process explorer) может быть массив если процессов больше 1, тогда ошибка в SendMessage там один параметр должен быть для hwd и надо делать foreach. не стал разбираться что там не так. но в других случаях 0xF290 тоже не работает, я не смог по-быстрому найти, что означает такое значение.
 
FriendOldMouse
вот так работает на W10-11, если надо подставлять путь, то надо адаптировать код

Код:
:: для cmd 1 по полному пути
powershell -command "(New-Object -ComObject Shell.Application).Windows() | Where-Object { [uri]::new($_.LocationURL).LocalPath -eq '%SystemDrive%\папка123' } | ForEach-Object {$_.Refresh()}"
:: для cmd 2 по имени папки
powershell -command "(New-Object -ComObject Shell.Application).Windows() | Where-Object { $_.LocationName -eq 'папка123' } | ForEach-Object {$_.Refresh()}"
 

Всего записей: 1778 | Зарегистр. 12-12-2006 | Отправлено: 16:36 15-04-2025
greeple

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
westlife
Цитата:
для интереса проверил c# так не понимает при передаче из (Get-Process explorer).MainWindowHandle
ошибки нету но и не работает, если указать hwd всем окнам 0xffff то работает с другим параметром 0xA220 вместо 0xF290. еще в выводе (Get-Process explorer) может быть массив если процессов больше 1, тогда ошибка в SendMessage там один параметр должен быть для hwd и надо делать foreach. не стал разбираться что там не так. но в других случаях 0xF290 тоже не работает, я не смог по-быстрому найти, что означает такое значение.

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

Всего записей: 7426 | Зарегистр. 11-02-2020 | Отправлено: 19:47 15-04-2025
lexapass



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GCRaistlin

Цитата:
Нет. Взгляните на права на каталог FileRepository.
 

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

Цитата:
Этот батник у меня ни чего не удаляет...

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

Всего записей: 574 | Зарегистр. 11-10-2004 | Отправлено: 20:29 15-04-2025
AVAV

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Доброго дня! Мучаюсь с скриптом небольшим, не могу победить.
Следующий код ищет в папке несколько бэкапов и копирует самый новый, он работает
 
SET Target=F:\
SET BackupPath=D:\DATA
FOR /F "delims=|" %%I IN ('DIR "%BackupPath%\SRV*.7z" /B /O:D') DO SET NewestFile=%%I
copy "%BackupPath%\%NewestFile%" "%Target%"
 
Единственно, неудобно, если необходимо выбирать самый новый из множества бэкапов, приходится плодить строки.
Подумал в переменную засунуть, чтоб добавлять шаблоны при необходимости, не касаясь скрипта
Обыграл в цикле, только вот не работает должным образом - копирует вообще из папки все подряд, поправьте плиз, где накосячил. Если конечно так можно. Заранее благодарен!
 
SET "FilePatterns=SRV*.7z SRV2*.7z SRV3*.7z"
SET Target=F:\
SET BackupPath=D:\DATA
FOR %%P IN (%FilePatterns%) DO (
            SET NewestFile=""
     FOR /F "delims=|" %%I IN ('DIR "%BackupPath%\%%P" /B /O:D') DO (
         SET NewestFile=%%I
               IF defined NewestFile (
               copy "%BackupPath%\%NewestFile%" "%Target%"
               )
      )
 )

Всего записей: 23 | Зарегистр. 16-05-2003 | Отправлено: 20:56 15-04-2025
westlife



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lexapass

Цитата:
 демонстрация выполнения команд

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

Всего записей: 1778 | Зарегистр. 12-12-2006 | Отправлено: 21:00 15-04-2025
GCRaistlin



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
lexapass
Да, вы правы, запутался. Администратор может объявить себя владельцем любого файла, на то он и администратор.

----------
Magically yours
Raistlin

Всего записей: 4373 | Зарегистр. 18-04-2005 | Отправлено: 22:02 15-04-2025
MaraGame24



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
westlife
GCRaistlin
lexapass
 
Что бы не считали меня тыры-пыры )))
Видео неработоспособности этого батника...
 
Видео--->>> https://disk.yandex.ru/i/riMuChBUj9FOpA

Всего записей: 2247 | Зарегистр. 25-11-2023 | Отправлено: 10:51 16-04-2025 | Исправлено: MaraGame24, 10:56 16-04-2025
westlife



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MaraGame24

Цитата:
Что бы не считали меня тыры-пыры )))  

дело не в этом. нужны подробности. в обычной ситуации тех параметров достаточно. значит есть что-то ещё. я проверял. если например поставить запрет "Удаление" именно на файл, НЕ унаследованный от папки, то тех параметров не достаточно удалить, надо удалять акл запрета, можно доп команду /reset после смены владельца, чтобы права сбросило и стали унаследованы, тогда параметры прав админа будут в приоритете на файл и будет достаточно выполнить свое дело.
И у вас на видео батник закрывается еще не выполнив ничего 2 раза. Поэтому по вашему видео ничего не видно и пока не известно выполняется он или нет.

Всего записей: 1778 | Зарегистр. 12-12-2006 | Отправлено: 11:29 16-04-2025
MaraGame24



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
westlife
Цитата:
И у вас на видео батник закрывается еще не выполнив ничего 2 раза.
Команду он свою отрабатывает...Я просто пропускаю 15сек. которые прописаны в батнике...
Могу в самом батнике убрать таймаут 15сек. , будет тоже самое...
Писать видушку заново ??? Или поверите на слово ???
Вы в соседней теме (по Win11) пытались уже сделать что то подобное, но у вас ни чего не вышло.

Всего записей: 2247 | Зарегистр. 25-11-2023 | Отправлено: 13:09 16-04-2025 | Исправлено: MaraGame24, 13:11 16-04-2025
westlife



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MaraGame24

Цитата:
Или поверите на слово ???  

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

Всего записей: 1778 | Зарегистр. 12-12-2006 | Отправлено: 14:14 16-04-2025
MaraGame24



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
westlife
 
Напишите весь батник заново, я сниму новую видушку, и сюда выложу...
Уверенность на 196% что новый батник тоже ни чего не удалит...
Цитата:
потом нужно будет от вас получить данные по настройкам прав на эти файлы
Не я правила на эти файлы устанавливаю...при загрузки VB она их (правила\файлы) устанавливает...
 
В чем проблема скачать VB и все узнать самому )))--->> Подробнее...

Всего записей: 2247 | Зарегистр. 25-11-2023 | Отправлено: 14:17 16-04-2025 | Исправлено: MaraGame24, 14:23 16-04-2025
westlife



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MaraGame24

Цитата:
В чем проблема скачать VB и все узнать самому )))-

так там написано, что следов в системе не оставляет, как я проверю? =)
у меня тут появлися вопрос, а запускали батник для проверки вот именно такой без правки?

Код:
@echo off
timeout -t 15
takeown /f "%windir%\System32\DriverStore\FileRepository\ФАЙЛ.inf" /a
icacls "%windir%\System32\DriverStore\FileRepository\ФАЙЛ.inf" /grant *S-1-5-32-544:(F)
del /f /q "%windir%\System32\DriverStore\FileRepository\ФАЙЛ.inf"
 

имею в виду вы подставляли в путь свои файлы или нет?

Всего записей: 1778 | Зарегистр. 12-12-2006 | Отправлено: 14:24 16-04-2025 | Исправлено: westlife, 14:25 16-04-2025
MaraGame24



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
westlife
Цитата:
имею в виду вы подставляли в путь свои файлы или нет?
Да, там на видео видно все.
Цитата:
так там написано, что следов в системе не оставляет, как я проверю? =)
Это SFX архив с костылем (для удаления этих файлов)...После запуска скопируйте папку %Temp%\Virtual Box куда нибудь на диск, и запустите обычно (поймете)...Файлы удаляться не будут..

Всего записей: 2247 | Зарегистр. 25-11-2023 | Отправлено: 14:37 16-04-2025 | Исправлено: MaraGame24, 14:44 16-04-2025
westlife



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MaraGame24

Цитата:
Да, там на видео видно все.

да увидел проблему, у меня яндекс не открывался 10 минут. обвел ее на скрине:  
https://i.imgur.com/fdbYVRS.png

Всего записей: 1778 | Зарегистр. 12-12-2006 | Отправлено: 14:46 16-04-2025
MaraGame24



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
westlife
 
Да, я сама слепотааа ))) Щас проверю отпишусь...
 
Все сработало на УРА !!!
Всем спасибки
 
Переделали VirualBox c новым костылем ))) Кому зашло перекачайте, ссылка выше...(со старым костылем тоже работает)))

Всего записей: 2247 | Зарегистр. 25-11-2023 | Отправлено: 14:48 16-04-2025 | Исправлено: MaraGame24, 15:13 16-04-2025
destiny_child



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вопрос - реализуется ли такая фишка:
есть переменная с путем до каталога. и есть имя файла.
НАДО открыть сторонний cmd.exe, перейти в этот каталог и вывести в строке приглашения к вводу - имя этого файла.
C:\prg\prt\utils
setclock.exe
результат = открытая консоль с такой предзаполненной строкой приглашения к вводу:
C:\prg\prt\utils>setclock.exe
 
и курсор ввода стоит за последним символом имени файла.

Всего записей: 4690 | Зарегистр. 01-04-2006 | Отправлено: 20:11 21-04-2025 | Исправлено: destiny_child, 20:15 21-04-2025
DeZz



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
кто то пробовал крутить API onetimesecret.com ?
к примеру на пошике ?

Всего записей: 1363 | Зарегистр. 23-01-2006 | Отправлено: 10:42 30-05-2025
AnTul

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите, пожалуйста, можно ли сделать так, чтобы устанавливался нужный ip-адрес? У меня телевизор подключен к компьютеру по WI-FI и иногда айпишник меняется. Приходится каждый раз перенастраивать телевизор, а пультом это неудобно.

----------
Василий Великий: «Кто смотрит на зло без отвращения, тот скоро будет смотреть на него с удовольствием».

Всего записей: 5744 | Зарегистр. 13-07-2004 | Отправлено: 16:40 31-05-2025
gntix



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AnTul
А причем здесь эхотаг? Настройте свой DHCP-сервер чтобы он за телевизором закрепил постоянный адрес.

Всего записей: 762 | Зарегистр. 07-12-2004 | Отправлено: 23:17 31-05-2025
BorlandIMHO

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AnTul
Выдача устройству по DHCP каждый раз одного и того же IP делается соответствующей настройкой сервиса DHCP ("Static Lease", привязка IP к MAC) на раздающем устройстве (роутер или что у вас там). Батники здесь вообще ни при чём, никаким боком.

Всего записей: 3052 | Зарегистр. 12-10-2006 | Отправлено: 08:52 01-06-2025
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44

Компьютерный форум Ru.Board » Компьютеры » Программы » Командная строка, батники, сценарии: bat, cmd


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2025

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru