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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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 187 188

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

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

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

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Inoz2000 - size+=%%~zx/1024 а так?
И так у меня никак ни в cmd ни в vb
 
BorlandIMHO
Спасибо за наводку.  
В скрипте есть:  подсчет всех файлов в всех вложенных папках - просто добавить туда ваш вариант подсчета размера.
Но тоже с ограничением размера.
 
С powershell ранее не имел дело.  Не могу сообразить:
   1). Как sum присвоить переменной: через трубу или в ps есть свое ?
   2). Как в cmd прикрутить  powershell -command - к работающей команде ps - где расставлять " и ()
"{0:N2} MB" -f ((gci -force %dirs% -Recurse -ErrorAction SilentlyContinue | Where-Object { $_.LinkType -notmatch "HardLink" }| measure Length -s).sum / 1Mb)
 
По этому образцу не проходит:
powershell -command "(gci -path '.\folder' -recurse | measure -sum Length).sum"
 
Fenrizz
Спасибо.  Похоже DU - что надо.  
cmd и vb не работают с большими числами.  А в моем зоопарке: в некоторых ОС  (см. тут таблицу) - где прогоняется скрипт- нет powershell
А DU вроде работает везде.
 
Только не соображу как вытащить размер.
du выводит 3 варианта:
Из 1) легче вытащить: но не понятно что за единицы:
Size: 1а935а395а260 bytes
Как их перевести например в мб
В других вариантах вижу зацепку в поиске только на "
for /F "usebackq eol=P tokens=6 delims=," %i IN (`__Files\DU\du-x64.exe  -ct -q -u dirout^|find "`) DO echo %i
Но не могу правильно приписать:   dirout^|find "`
Как тут лучше сделать ?
 
Удачи.

----------
Везде трудно первые 15 лет, потом легче.
Все проблемы имеют ПРОСТОЕ решение
Ты начальник я дурак я начальник ты дурак. Но хуже дурака дурак с инициативой.

Всего записей: 1567 | Зарегистр. 04-09-2015 | Отправлено: 20:20 23-11-2023 | Исправлено: alex52mail, 20:38 23-11-2023
BorlandIMHO

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alex52mail
1)Так же, как и результат любой другой команды: "завернуть" вызов в for.

Код:
for /f "usebackq tokens=1 delims=" %%A in (`команда с параметрами`) do set VARIABLE=%%A

2) Замените все " в своей команде на ', потом справа и слева добавьте по " и допишите в начало powershell -command
 

Цитата:
 в некоторых ОС  ... нет powershell

powershell есть штатно во всех Win начиная с Vista, может быть установлен в XP/2003; ни одной Win младше 7 в вашем "списъке" не увидел...
Если пошик отсутствует в вашей любимой "супер-пупер-гипер-на#%р-сборке виндовс 7" - все вопросы к её аффтару.
В составе стрельцового WinPE - да, пошика нет. Сильно подозреваю - потому, что автор сего диска не посчитал его нужным включить в состав (хотя это может быть и фундаментальной особенностью PE; не интересовался).
В {более-менее актуальный} линь пошик вполне может быть установлен, при соответствующем желании.
 
 
 
 


----------
http://www.imho.ws

Всего записей: 2394 | Зарегистр. 12-10-2006 | Отправлено: 22:10 23-11-2023
Fenrizz



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

Цитата:
Из 1) легче вытащить: но не понятно что за единицы:
Size: 1а935а395а260 bytes
Как их перевести например в мб  

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

Код:
for /f "tokens=1,2,3,4,5,6,7 delims=," %%A in ('du-x64.exe -nobanner -c -u -q dirout') do set dirsize=%%F

Всего записей: 677 | Зарегистр. 12-09-2017 | Отправлено: 08:20 26-11-2023 | Исправлено: Fenrizz, 08:38 26-11-2023
DeZz



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Если вдруг у кого есть наработки на .bat по простому бекапу - поделитесь плез. Понятно, что не сложно написать, но мож у кого есть проверенный временем вариант.
 
К примеру,  
 - есть список папок на ПК №1
 - нужно сделать бекап на ПК №2 сохраняя структуру
 - причем, создавая на ПК №2 каждый раз для этого новую папку ГГГГ-ММ-ДД--ЧЧ-ММ-СС

Всего записей: 1154 | Зарегистр. 23-01-2006 | Отправлено: 11:25 27-11-2023
MaraGame24

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
HELP !!!
мало понимаю в написании BAT файлов.
нужен батник что бы ВСЕГДА скачивал РЕЛИЗНУЮ версию .EXE вот отсюда https://github.com/abbodi1406/vcredist
СПАСИБО.

Всего записей: 161 | Зарегистр. 25-11-2023 | Отправлено: 12:16 28-11-2023 | Исправлено: MaraGame24, 12:19 28-11-2023
ExDimanya



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MaraGame24 так качается с зеркал без проблем по постоянным ссылкам с зеркал https://kutt.it/vcpp или https://rebrand.ly/vcpp. В чём проблема?

----------
Клон полезняшек от Ratiborus
Телеграм
Sic transit gloria mundi

Всего записей: 12713 | Зарегистр. 19-04-2018 | Отправлено: 12:34 28-11-2023 | Исправлено: ExDimanya, 12:36 28-11-2023
MaraGame24

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ExDimanya
клон подходит по первой ссылке и все таки )))
спасибо.
 
Добавлено:
получилось вот так через BAT файл...
 
@echo off
@title VC++
@cd /d "%~dp0"
@if not exist "curl.exe" @if not exist "%SystemRoot%\SYSTEM32\curl.exe" (
@echo Downloading with powershell . . .
@powershell -Command "$wc = New-Object System.Net.WebClient; $wc.Headers.Add('referer'); $wc.DownloadFile('https://kutt.it/vcpp', 'VC++.exe')"
) else (
@echo Downloading with CURL . . .
@curl.exe -RL# "https://kutt.it/vcpp" -o "VC++.exe"
)
start VC++.exe
exit
 
покороче БЫ )))

Всего записей: 161 | Зарегистр. 25-11-2023 | Отправлено: 12:36 28-11-2023 | Исправлено: MaraGame24, 13:05 28-11-2023
DeZz



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
из популярной тут серии "сам спросил сам отвечаю":
 

Код:
set BACKUP_FROM=D:\1
set BACKUP_TO=D:\2
set DATE_TIME=%date:~0,2%.%date:~3,2%.%date:~6,4%-%time:~0,2%.%time:~3,2%.%time:~6,2%
cd %BACKUP_TO%
md %DATE_TIME%
xcopy /E /F /H %BACKUP_FROM% %BACKUP_TO%\%DATE_TIME%

 
вопрос, как доработать, чтобы для BACKUP_FROM можно было указать список папок?

Всего записей: 1154 | Зарегистр. 23-01-2006 | Отправлено: 12:39 29-11-2023
MaraGame24

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
HELP!!!
Есть файл 0.exe расположенный в папке %TEMP%.
Системный %TEMP% вынесен в PrimoRamDisk.
Как сделать батник что бы 0.exe переносился или копировался на рабочий стол без подтверждения и видимых окон ???
СПАСИБО.

Всего записей: 161 | Зарегистр. 25-11-2023 | Отправлено: 21:14 01-12-2023
Inoz2000



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
MaraGame24
ну дык там ---> эти способы.

----------
Мы все умрём. (-:

Всего записей: 4898 | Зарегистр. 23-04-2009 | Отправлено: 21:36 01-12-2023
MaraGame24

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Inoz2000
там нету про батник что бы 0.exe переносился или копировался на рабочий стол.ЭТО ОСНОВНОЕ.

Всего записей: 161 | Зарегистр. 25-11-2023 | Отправлено: 21:42 01-12-2023 | Исправлено: MaraGame24, 21:42 01-12-2023
Inoz2000



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



----------
Мы все умрём. (-:

Всего записей: 4898 | Зарегистр. 23-04-2009 | Отправлено: 21:49 01-12-2023
MaraGame24

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Inoz2000
через команду xcopy получается батник для папки , а мне нужно для ФАЙЛА.

Всего записей: 161 | Зарегистр. 25-11-2023 | Отправлено: 21:59 01-12-2023 | Исправлено: MaraGame24, 23:21 01-12-2023
Inoz2000



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

Цитата:
получается батник для папки , а мне нужно для ФАЙЛА
Батник - это файл с несколькими последовательно выполняемыми командами.
тут, вроде, одной командой можно обойтись…

Цитата:
0.exe переносился или копировался на рабочий стол.ЭТО ОСНОВНОЕ
так вот ”Это“ основное, получается, а не то, что ранее сказано?

Цитата:
без подтверждения и видимых окон
В чём ваша проблема, сами можете донести?

Всего записей: 4898 | Зарегистр. 23-04-2009 | Отправлено: 06:05 02-12-2023
Arcadaw

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Создал ярлык на Запуск батника (через скрипт VBS), в котором вставлены команды на активацию правил в виндофаере. Т.е. ярлык с запуском как админ.
Но в этом батнике есть команда, которую хотел бы выполнить в обычном порядке, без админа.
Скажите как это сделать?
И лучше без ввода пароля. Ярлык же не требует ввода пароля.

Всего записей: 1506 | Зарегистр. 25-03-2004 | Отправлено: 14:48 02-12-2023 | Исправлено: Arcadaw, 14:59 02-12-2023
zloybuka

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

Код:
runas /trustlevel:0x20000 program.exe

Всего записей: 349 | Зарегистр. 30-05-2008 | Отправлено: 15:55 02-12-2023
Arcadaw

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

Цитата:
 runas /trustlevel:0x20000 program.exe  

Не, че-то не получилось. Прога запускается, но инет там не грузит.
 

Цитата:
Но в этом батнике есть команда, которую хотел бы выполнить в обычном порядке, без админа.  

Эта команда, запуск браузера.

Всего записей: 1506 | Зарегистр. 25-03-2004 | Отправлено: 17:15 02-12-2023
Fenrizz



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

Код:
cmd /min /C "set __COMPAT_LAYER=RUNASINVOKER && start "" command"

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

Всего записей: 677 | Зарегистр. 12-09-2017 | Отправлено: 17:39 02-12-2023
Arcadaw

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

Цитата:
 но я сомневаюсь, что она понизит привелегии, если сам батник запущен от админа.

Попробую. Тогда, видимо, наоборот надо делать. Запускать с обычными правами, а некоторые команды (активации правил фаера) с повышенными.

Всего записей: 1506 | Зарегистр. 25-03-2004 | Отправлено: 18:46 02-12-2023
skysun01



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

Всего записей: 66 | Зарегистр. 23-02-2015 | Отправлено: 21:37 05-12-2023 | Исправлено: skysun01, 21:05 24-12-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 187 188

Компьютерный форум 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