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

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

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

Maz (20-06-2024 22:42): Командная строка, батники, сценарии - bat, cmd (7 часть)  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 189 190 191 192 193 194 195 196 197 198 199 200 201

   

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

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

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

Цитата:
Для ускорения обработки: "базу" и "шаблон" скопировать на RAM-диск (например ImDisk). Это исключит, как минимум, влияние скорости HDD.

Спасибо за совет. Но мне к сожалению не помогло. Скорость сравнения осталась такой же.
Хотя 1 гиг озу оттяпала (таким RAM-диск настроил).
Видимо от "хитрого векторного поиска" зависит. )))
А про CUDA - помечталось уж с намеком вдруг есть или кто то сможет придумать )))
По аналогии с RAM-диском, чтоб не физический цпу мучал, а виртуальный на видюхе )))
Открываешь так диспетчер задач и весь рабочий стол в процессорах, экрана монитора аж не хватает )))
 
З.Ы. Кстати где то читал, что скрипт сильно может тормозить вывод информации на экран. Мол надо "потихому" его запускать.
Но у меня новая инфа раз в 4-5 сек появляется что все ок. То есть вроде не так часто.
Поможет ли и как настроить?
Хотя с другой стороны видно ход процессов и можно прикинуть сколько времени осталось.

Всего записей: 29 | Зарегистр. 24-09-2021 | Отправлено: 14:12 25-09-2021 | Исправлено: zh76internetru, 15:19 25-09-2021
BorlandIMHO

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

Цитата:
про CUDA - помечталось уж с намеком вдруг есть или кто то сможет придумать

Ещё раз: сам по себе командный процессор (cmd.exe) переводить на CUDA абсолютно бессмысленно (и даже вредно). Будет только медленнее...
То же самое относится к приложениям класса "текстовый процессор" (*grep в их числе). Иначе уже давно сделали бы сборки для CUDA...


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

Всего записей: 2612 | Зарегистр. 12-10-2006 | Отправлено: 15:22 25-09-2021
zh76internetru

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

Цитата:
Иначе уже давно сделали бы сборки для CUDA...

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

Всего записей: 29 | Зарегистр. 24-09-2021 | Отправлено: 15:50 25-09-2021
Smitis



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

Цитата:
Мне кажется недолго осталось.  

Вангую, никто не будет заниматься таким маразмом, как портирование cmd для CUDA. У cmd свои задачи, к CUDA отношения не имеющие.
Лучше обратите внимание на Python - модный язык, наверняка что-то там с CUDA замутили.

----------
Разум когда-нибудь победит

Всего записей: 3439 | Зарегистр. 09-02-2003 | Отправлено: 16:42 25-09-2021
zh76internetru

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

Цитата:
портирование cmd для CUDA

Дык и не надо. Зачем если можно цпу выдумать? Примеры есть. Вот например:
 

Цитата:
Существуют эмуляторы процессоров. Например, вы можете скачать эмулятор NES и поиграть на нем в старые игры. Эти игры написаны для процессора Ricoh 2A03, но играть в них вы будете на процессоре семейства Intel. Однако большинство игр подмены не заметят, поскольку эмулятор реализует все нужные инструкции. В этом смысле эмулятор NES содержит в себе виртуальный процессор.

 
Приспичит - сделают )))

Всего записей: 29 | Зарегистр. 24-09-2021 | Отправлено: 17:07 25-09-2021
Propretor



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Коллеги, опять нужна помощь.
Батником не удается внести изменения в регистре, нет прав доступа:

Код:
 
@ECHO OFF
REG ADD "HKLM\SYSTEM\CurrentControlSet\Control\Power\User\PowerSchemes\8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c\54533251-82be-4824-96c1-47b60b740d00\5d76a2ca-e8c0-402f-a133-2158492d58ad" /v ACSettingIndex /t REG_DWORD /d 1 /f
 
Что любопытно, RegEdit также не имеет прав на это действие.
В то же время, мне известны как минимум 2 внешние программы, которые позволяют внести изменения в данном ключе.
Подскажет кто-нибудь средство для разблокировки такой возможности?

Всего записей: 337 | Зарегистр. 12-03-2003 | Отправлено: 14:30 27-09-2021
Fenrizz



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Propretor
Вообще не может или UAC выдаёт?  
Посмотрите в Regedit у каких пользователей есть права на запись в этот раздел.
 

Цитата:
Что любопытно, RegEdit также не имеет прав на это действие.  

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

Цитата:
В то же время, мне известны как минимум 2 внешние программы, которые позволяют внести изменения в данном ключе.

Проверьте, запущены ли эти программы с повышенными правами и от какого пользователя?  
https://mywebpc.ru/windows/uznat-proczess-s-pravami-administratora/
https://spy-soft.net/find-user-runs-process-windows-10/

Всего записей: 689 | Зарегистр. 12-09-2017 | Отправлено: 14:45 27-09-2021 | Исправлено: Fenrizz, 06:41 28-09-2021
zh76internetru

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

Цитата:
Открываешь так диспетчер задач и весь рабочий стол в процессорах, экрана монитора аж не хватает )))

Вота че надыбал.
 
https://c.radikal.ru/c20/2109/8f/3c2bfe66ecc3.jpg
 
Вот бы таким сметанки поесть - мой батничек в cmd поюзать )))

Всего записей: 29 | Зарегистр. 24-09-2021 | Отправлено: 09:19 28-09-2021 | Исправлено: zh76internetru, 09:21 28-09-2021
teleportex

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Propretor
режим питания меняй через - powercfg
powercfg /s SCHEME_MIN
powercfg /x /monitor-timeout-ac 0
powercfg /x /standby-timeout-ac 0
powercfg /x /disk-timeout-ac 0

Всего записей: 1108 | Зарегистр. 13-02-2013 | Отправлено: 17:06 30-09-2021 | Исправлено: teleportex, 17:07 30-09-2021
Alex_Piggy

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Доброе время,zh76internetru
Можно посмотреть на батник, который Вы запускаете? Желательно с примером входных данных (конечно, если нет критичной информации. Если есть - то примерные количество и длина строк в исходных файлах).
 
 

Всего записей: 1906 | Зарегистр. 07-08-2002 | Отправлено: 17:28 30-09-2021
zh76internetru

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alex_Piggy
см. тут: https://github.com/Genivia/ugrep/issues/153#issuecomment-931500447  
Профессора озадачил...)))

Всего записей: 29 | Зарегистр. 24-09-2021 | Отправлено: 11:52 01-10-2021
Alex_Piggy

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

Цитата:
https://TransFiles.ru/8basi
Добавлено: 27.09.2021 19:52 Всего файлов: 1 Общий размер: 31.5 МБ Загрузок: 2  
Файлы были удалены по причине:  срок хранения закончился

Можете еще раз выложить? Я не успел скачать...
UPD - Уточню насчет "something similar" - это Вы ищете полное совпадение строк, частичное или по регекспу?

Всего записей: 1906 | Зарегистр. 07-08-2002 | Отправлено: 14:24 01-10-2021 | Исправлено: Alex_Piggy, 14:28 01-10-2021
zh76internetru

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alex_Piggy
Полное. Миллионами из миллиардов )))  
https://transfiles.ru/hlo7y

Всего записей: 29 | Зарегистр. 24-09-2021 | Отправлено: 14:51 01-10-2021
Alex_Piggy

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
zh76internetru
Тогда Вам grep ни к чему. Берете что угодно, способное работать с именованными ассоциативными массивами.
awk у меня (SL-75KAV Athlon2000+ 1GB Ram WinXP) обрабатывает суммарный файл (copy 1K1.txt +1K2.txt +1K3.txt +1K4.txt +1K5.txt 1K.txt) за 2 с. Памяти нужно 13 МБ.
procprofile32  awk "BEGIN{i=0} NR==FNR{a[$1]++; next} {i++;if ($1 in a) {print FILENAME,i,$1;}}" 2.txt 1K.txt
Подробнее...
По отдельности уходит примерно по 0,8 секунды на файл.
for %%i in (1K?.txt) do procprofile32 awk "BEGIN{i=0} NR==FNR{a[$1]++; next} {i++;if ($1 in a) {print FILENAME,i,$1;}}" 2.txt %%i >> 0.txt
UPD. Только я похоже запутался что где искать. Если наоборот - шаблон 1K.txt и обрабатываемый файл 2.txt - то 2,5 с и 50 Мб памяти (память = 5* размер файла шаблона). Лучше искать большее в меньшем. Можно печатать полные пары номеров строк -  
"2.txt:45594 1K.txt:74040 WnKgKzJniQp1qkL1E1tgwyJvUUTNBXVN"

Всего записей: 1906 | Зарегистр. 07-08-2002 | Отправлено: 15:27 01-10-2021 | Исправлено: Alex_Piggy, 15:43 01-10-2021
zh76internetru

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ниче не понял ))) Но прикольно.
Я на Ripgrep остановился, пока устраивает. Посмотрим что профессор ответит.  
З.Ы. Не могу найти procprofile32...(((

Всего записей: 29 | Зарегистр. 24-09-2021 | Отправлено: 16:33 01-10-2021 | Исправлено: zh76internetru, 16:53 01-10-2021
los

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Alex_Piggy,
будьте добры, бегло просмотрите
http://forum.ru-board.com/topic.cgi?forum=5&topic=0602&start=1140
вам ничего не кажется знакомым?
 

Всего записей: 7697 | Зарегистр. 08-09-2001 | Отправлено: 16:51 01-10-2021
zh76internetru

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

Цитата:
Не могу найти procprofile32...(((

Нашел какой то
 
F:\qwerty>procprofile32 awk "BEGIN{i=0} NR==FNR{a[$1]++; next} {i++;if ($1 in a) {print FILENAME,i,$1;}}" 1K.txt 2.txt
Failed to start process, error code 2.
 
F:\qwerty>pause
Для продолжения нажмите любую клавишу . . .

Всего записей: 29 | Зарегистр. 24-09-2021 | Отправлено: 17:41 01-10-2021
Alex_Piggy

Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
zh76internetru
procprofiler32 - это тестовая программа для определения расхода ресурсов. Чтобы уйти от фоток и говорить о расходе в секундах CPU и мегабайтах. Для x64 программ - естественно procprofiler64.
Проверьте наличие awk.
В любом случае похоже что это обсуждалось декаду назад...
 
Здравствуйте, los
Благодарю.  
Не могу понять как работает seen[$0] - для меня это короткая форма от "{print seen[$0];}". Но явно не так...
Увидел интересный эффект ("CPU time" и "Working set" - минимальное из 5 запусков):

Код:
procprofile32 awk "NR==FNR{seen[$0]=1; next} seen[$0]" 1K.txt 2.txt
Process Time     :           1.652s
Working Set      :           47328 KB
procprofile32 awk "NR==FNR{seen[$0]++; next} seen[$0]" 1K.txt 2.txt
Process Time     :           1.872s
Working Set      :           60072 KB
procprofile32 awk "NR==FNR{seen[$0]++; next} {if ($0 in seen) print seen[$0]}" 1K.txt 2.txt
Process Time     :           1.622s
Working Set      :           51556 KB
 

UPD: Разница в cpu time и working set между sort в Win(3с 25мб) и MSYS(1с 10мб) - 3 раза!!!

Всего записей: 1906 | Зарегистр. 07-08-2002 | Отправлено: 19:19 01-10-2021 | Исправлено: Alex_Piggy, 19:30 01-10-2021
zh76internetru

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

Цитата:
procprofiler64.
Проверьте наличие awk.

Где все это взять?
 
Добавлено:

Цитата:
1K.txt 2.txt
Process Time     :           1.652s

У меня рипрег примерно столько же выдает. от проца зависит.
Приемлемо, но хотелось бы быстрее раз в 10 минимум.
 

Всего записей: 29 | Зарегистр. 24-09-2021 | Отправлено: 19:23 01-10-2021 | Исправлено: zh76internetru, 19:34 01-10-2021
Alex_Piggy

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

Цитата:
Где все это взять?

Вам ссылки давали же.
https://github.com/mbuilov/gawk-windows  
https://github.com/davidcatt/ProcProfile encode.su
UPD - вспомнил что были еще вариации - mawk nawk и кажется tawk. У них скорость может отличатся.

Цитата:
У меня рипрег примерно столько же выдает. от проца зависит.

Суммарно для всех 1К* файлов? Мой проц я писал выше.

Всего записей: 1906 | Зарегистр. 07-08-2002 | Отправлено: 19:37 01-10-2021 | Исправлено: Alex_Piggy, 19:51 01-10-2021
   

Страницы: 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 189 190 191 192 193 194 195 196 197 198 199 200 201

Компьютерный форум Ru.Board » Компьютеры » Программы » Командная строка, батники, сценарии - bat, cmd
Maz (20-06-2024 22:42): Командная строка, батники, сценарии - bat, cmd (7 часть)


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru