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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186

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

Maz



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

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

Всего записей: 38721 | Зарегистр. 26-02-2002 | Отправлено: 13:35 19-09-2020 | Исправлено: metatrop, 07:55 29-11-2022
GCRaistlin



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

Цитата:
ЧЯДНТ?

В точности сделайте, как я написал. По обоим пунктам.

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

Всего записей: 3951 | Зарегистр. 18-04-2005 | Отправлено: 18:26 03-08-2023
insorg



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Пардон. Я промахнулся батником, какой правил и какой тестил. Всё работает. Спасибо.

Всего записей: 15143 | Зарегистр. 04-11-2010 | Отправлено: 18:35 03-08-2023
virjokk

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
insorg
Чтобы не делать слишком много приседаний на cmd, версию вивальди и имя файла из vivaldi-versions.js можно достать и пошиком:
Код:
 
powershell.exe -nol -nop -ex bypass -c "((iwr https://vivaldi.com/wp-content/vivaldi-versions.js).content).split('=')[1] | ConvertFrom-Json | %{$_.vivaldi_version_number; $_.vivaldi_version_win64}"
 

Всего записей: 281 | Зарегистр. 19-05-2006 | Отправлено: 09:26 04-08-2023 | Исправлено: virjokk, 11:10 04-08-2023
insorg



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
virjokk
Пошик не подходит. Эти "приседания" всё равно нужно делать, потому что адрес vivaldi-versions.js  каждый раз новый (там после знака "?" идут ещё циферки), которые приоритетнее "обычного" без циферок (с его обновой они вечно тупят по нескольку дней после релиза). Да и помимо того, этот пошик - тот ещё лютый тормоз.

Всего записей: 15143 | Зарегистр. 04-11-2010 | Отправлено: 15:44 04-08-2023
Chekushka05

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите пожалуйста, никак не допру. Допустим есть папка, в папке программа, нужно эту программу запустить батником с параметрами -tray Как прописать в батнике путь и запуск так, чтобы можно было запускать из любого места эту прогу, хоть с флэшки.

Всего записей: 86 | Зарегистр. 31-03-2022 | Отправлено: 09:02 05-08-2023
fscpsd



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Chekushka05
Если батник находится в той же папке, что и программа, тогда просто не пишите вообще никакой путь — в своей текущей папке батник всегда найдёт программу сам, где бы они (батник и программа) ни находились. А уже ярлык на этот батник можно будет поместить куда угодно.

Всего записей: 1619 | Зарегистр. 16-09-2010 | Отправлено: 09:55 05-08-2023 | Исправлено: fscpsd, 10:48 05-08-2023
JiIdbtlL

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
fscpsd
до меня наконец дошло как до жирафа, хотя времени нет особо разбираться, а ведь вы мне сразу указали чтобы запустить команды раздельно.
taskkill /f /im "psiphon.exe"  эта команда требует прав админа, иначе карусель...
start "" psiphon.exe --config config\psiphonAT.config --serverList config\server_list.dat  а эта наоборот не запускает ехешник от админа.
Но теперь возник новый вопрос, как эти команды совместить в одно нажатие кнопки?

Всего записей: 115 | Зарегистр. 03-10-2022 | Отправлено: 11:36 05-08-2023
insorg



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
JiIdbtlL
Запускать от админа весь батник. Только пути запуска проверять, потому что повышение прав сбрасывает рабочий путь на system32.
 
Добавлено:
Chekushka05
Цитата:
можно было запускать из любого места эту прогу, хоть с флэшки.
Если батник+прога лежат вместе, то просто в начале батника добавляешь
Код:
@cd /d "%~dp0"
, и тогда пути к ехе можно не указывать, а батник вызывать из любого места/ярлыка.

Всего записей: 15143 | Зарегистр. 04-11-2010 | Отправлено: 16:06 05-08-2023
notinthewoods



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

Цитата:
Ну мало ли что роботы поведывают. Они железные - какой с них спрос?

Решил спросить у "железного" робота, как решить одну задачу. Мне изначально она показалось не слишком сложной для таких обученных монстров. Однако...
Результат милой беседы
Действительно ли нерешаемая задача? Может, знающие люди подскажут, как её решить?
Только средствами CMD, без PowerShell.

Всего записей: 470 | Зарегистр. 31-01-2015 | Отправлено: 17:11 08-08-2023
GCRaistlin



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
notinthewoods
Так она у вас изначально решена. Я бы только делал замену в случае наличия в переменной соответствующей буквы, а не безусловно.

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

Всего записей: 3951 | Зарегистр. 18-04-2005 | Отправлено: 17:23 08-08-2023
notinthewoods



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GCRaistlin
Вы даете советы с высоты вашего огромного опыта. У меня и близко нет подобных знаний в этом вопросе. Не могли бы вы привести конкретный код?
Для примера, вводим слово:
FIFA_World_Cup-2018_in_Russia
Оно должно быть трансформировано в:
fifa_world_cup-2018_in_russia

Всего записей: 470 | Зарегистр. 31-01-2015 | Отправлено: 17:35 08-08-2023
Pasha_ZZZ



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
notinthewoods
Можно еще так, выглядит мудренее скорей, чем короче:
 

Цитата:
 
@echo off
 
set /p name=Enter Word:
set newname=
:Loop
if "%name%"=="" goto :Output
set "sym=%name:~0,1%"
set "name=%name:~1%"
call :To_Low a b c d e f g h i j k l m n o p q r s t u v w x y z
set "newname=%newname%%sym%"
goto :Loop
:Output
echo "%newname%"
pause
goto :eof
 
:To_Low
if "%1"=="" goto :eof
if /i "%sym%"=="%1" (set "sym=%1") && goto :eof
shift
goto :To_Low
 

Всего записей: 12331 | Зарегистр. 11-03-2002 | Отправлено: 17:40 08-08-2023
Inoz2000



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
гугл помогает лучше робота
вот первая же ссылка scripting - How to convert the value of %USERNAME% to lowercase within a Windows batch script? - Stack Overflow
и маленький код, который я написал, ипользуя ответы

Код:
@echo off
SETLOCAL enableDelayedExpansion
SET "name=C:\Program Files (x86)\Microsoft Office"
for %%# in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do set "name=!name:%%#=%%#!"
echo %name%
pause

Всего записей: 4849 | Зарегистр. 23-04-2009 | Отправлено: 17:48 08-08-2023
GCRaistlin



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

Код:
 
set /p "String=Enter string: "
setlocal enabledelayedexpansion
for %%A in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do (
  if "!String!" neq "!String:%%A=!" set String=!String:%%A=%%A!
)
for /f "delims=" %%A in ("!String!") do (
  endlocal
  set String=%%A
)
set String
 

 
Добавлено:
Inoz2000
Будет работать медленнее, а если name включает "!" - вообще неправильно.

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

Всего записей: 3951 | Зарегистр. 18-04-2005 | Отправлено: 17:49 08-08-2023
notinthewoods



Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Сколько вариантов!
Вот ответы поочередно:
Батник от Pasha_ZZZ:

Цитата:
Enter Word: GO! GO! GO! Yes!
Transformed Word: go! go! go! yes!
Для продолжения нажмите любую клавишу . . .

Батник от Inoz2000:

Цитата:
Enter Word: GO! GO! GO! Yes!
Transformed Word: go go
Для продолжения нажмите любую клавишу . . .

Батник от GCRaistlin:

Цитата:
Enter Word: GO! GO! GO! Yes!
Transformed Word: go! go! go! yes!
Для продолжения нажмите любую клавишу . . .

Если учесть, что для моего батника будет каждый раз применяться исключительно ОДНО разное слово, к тому же безо всяких там восклицательных знаков, то все 3 варианта работают успешно!
Огромное спасибо за помощь!

Всего записей: 470 | Зарегистр. 31-01-2015 | Отправлено: 18:32 08-08-2023
Rakin_Gornosvistov



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите, есть вот в директории файл, имя с пробелами, как через FOR ввести в переменную имя такого файла без расширения? Ну к примеру файл "Rainlendar Pro 2.20.0-64bit" В имени файла то, что после Rainlendar может меняться.

Всего записей: 54 | Зарегистр. 10-10-2017 | Отправлено: 08:28 12-08-2023
fscpsd



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Rakin_Gornosvistov
Посмотрите в справке по FOR ("FOR /?").
Вам нужна конструкция "%~nI", которая из переменной %I выделяет только имя файла (без расширения).

Всего записей: 1619 | Зарегистр. 16-09-2010 | Отправлено: 08:49 12-08-2023
Rakin_Gornosvistov



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
fscpsd
Спасибо за подсказку! Давно не занимался - всё позабыл.

Всего записей: 54 | Зарегистр. 10-10-2017 | Отправлено: 06:13 13-08-2023
Egor2020

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Можно ли с помощью набора консольных утилит Git массово выкачать с GitHub абсолютно все версии следующих тем оформления для браузеров-лисоклонов Pale Moon, Basilisk, Mypal, Serpent и New Moon в формате XPI?:

Цитата:
https://github.com/Lootyhoof/aeromoon/releases
https://github.com/Lootyhoof/australium/releases
https://github.com/Lootyhoof/camimoon/releases
https://github.com/Lootyhoof/compactmoon/releases
https://github.com/Lootyhoof/darkmoon/releases
https://github.com/Lootyhoof/darkpitch/releases
https://github.com/Lootyhoof/fox2themoon/releases
https://github.com/Lootyhoof/kempelton-reloaded/releases
https://github.com/Lootyhoof/littlemoon/releases
https://github.com/Lootyhoof/macmoon/releases
https://github.com/Lootyhoof/maxi3/releases
https://github.com/Lootyhoof/maxi4/releases
https://github.com/Lootyhoof/micromoon/releases
https://github.com/Lootyhoof/modokimoon/releases
https://github.com/Lootyhoof/moonfox3/releases
https://github.com/Lootyhoof/moonola/releases
https://github.com/Lootyhoof/nauticalia/releases
https://github.com/Lootyhoof/noiamoon/releases
https://github.com/Lootyhoof/opresto/releases
https://github.com/Lootyhoof/pastmodern-revisited/releases
https://github.com/Lootyhoof/phoenity-rebirth/releases
https://github.com/Lootyhoof/photonic/releases
https://github.com/Lootyhoof/pmchrome/releases
https://github.com/Lootyhoof/pmopera/releases
https://github.com/Lootyhoof/qute4pm/releases
https://github.com/Lootyhoof/qutelarge/releases
https://github.com/Lootyhoof/qutelegacy/releases
https://github.com/Lootyhoof/reinheit/releases
https://github.com/Lootyhoof/tangerinemoon/releases
https://github.com/Lootyhoof/tangomoon/releases
https://github.com/Lootyhoof/walnutty/releases
https://github.com/Lootyhoof/whitemoon/releases
https://github.com/Lootyhoof/xmoon/releases
https://github.com/FranklinDM/Moonscape/releases
https://github.com/FranklinDM/Stratum/releases
https://github.com/FranklinDM/Milestone10/releases
https://github.com/FranklinDM/MaterialMoon/releases

Если да, то какой батник нужно для этого соорудить?

Всего записей: 1726 | Зарегистр. 01-03-2020 | Отправлено: 15:48 13-08-2023 | Исправлено: Egor2020, 15:50 13-08-2023
virjokk

Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Не знаю, как насчет консольных утилит гит, но батником можно так

Всего записей: 281 | Зарегистр. 19-05-2006 | Отправлено: 19:52 13-08-2023 | Исправлено: virjokk, 20:32 13-08-2023
Открыть новую тему     Написать ответ в эту тему

Страницы: 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 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186

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


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru