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

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

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

Maz (19-09-2020 13:36): Командная строка, батники, сценарии (bat, cmd) Часть 6  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

cchameleone



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

Важно: копируя батник через буфер обмена из форума не забывайте удалять пробелы в конце каждой строки, т.к. в некоторых случаях из-за этого программа будет работать неправильно!!! Чтобы не копировались концевые пробелы из форума, жмите на ссылку "Редактировать" в посте, и уже из редактора копируйте батник без пробелов.
 
Примечание: Большие куски кода заключайте в тэг [ 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 (PDF). Курс лекций для начинающих
· Бокалий В. Командная строка (pdf-брошюрка в 20 страниц)
· Александров А., Дибров А. Урок bat-аники (pdf)
· Уильям Р. Станек - Командная строка Windows. Справочник администратора
 
· Скрываем консольные окна, Выполнение BAT-скриптов без вызова окна консоли
· cmdow — изменение параметров и видимости дос-окна, Статья в КОМПЬЮТЕРРАONLINE
· Набор GNU утилит для win32
· HS_Packet.7z - Пакет утилит для организации интерфейса в bat-файлах
· Использование ansi.sys
· blat — отправка почты из консоли
· Команды RunDll32
· Quick Batch File Compiler - Позволяет превратить ваш батник в независимое приложение
· Easy Batch Builder+Rus+Crack - Редактор BAT файлов.Через графический интерфейс программы вы сможете быстро конструировать пакетные файлы практически любой сложности. (В комплекте есть Лоадер созданный с помощью Sign Of Misery некоторые антивирусы обзывают его вирусом. Вам решать: ставить или не ставить) (ЗЕРКАЛО)
· Простой способ получать текущую дату всегда в одном формате (не зависит от языков и настроек) ещё и ещё
· Переход из 32-битной версии cmd.exe в 64-битную (1) (2)(3)

Всего записей: 2279 | Зарегистр. 16-10-2015 | Отправлено: 09:22 29-04-2016 | Исправлено: Maz, 08:47 26-03-2020
GEGEMON



BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
iglezz (пост)
Цитата:
Код:

Браво!  
Не могли бы вы добавить в скрипт условие - игнорировать файлы с расширением, с любым?
BorlandIMHO
всё так как вы и предположили. Спасибо, использовал решение от iglezz .

Всего записей: 2820 | Зарегистр. 07-02-2006 | Отправлено: 15:58 26-12-2019
GCRaistlin



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
iglezz
Не нужна chcp: буквы с хвостиками отображаются нормально и без нее, а иероглифы - нет и с ней. Пробовал со шрифтами Consolas и Lucida Console.

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

Всего записей: 3962 | Зарегистр. 18-04-2005 | Отправлено: 16:04 26-12-2019
iglezz

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GEGEMON
Я то батник писал на простейший конкретный случай
Убрать из листинга файлы с расширением можно заменой `dir /b /a:-d` на `dir *. /b /a:-d`
 
Если надо тему развивать дальше, то лучше отталкиваться от варианта BorlandIMHO

Всего записей: 1521 | Зарегистр. 18-02-2003 | Отправлено: 16:05 26-12-2019
VVL99

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

Цитата:
Имеется директория с 6000 файлов без расширения, только имя. Имя состоит исключительно из цифр.  
Нужен сценарий переименования имени всех файлов с вычетанием 1 т.е. было 3456 стало 3455

rename_all_numbering_files_without_extension.JS
Код:
var fso = new ActiveXObject("Scripting.FileSystemObject"), f = fso.GetFolder("."), fc = new Enumerator(f.files);
for (; !fc.atEnd(); fc.moveNext()) {
    var nm = fso.GetFileName(fc.item());
    if (+nm && fso.GetExtensionName(nm) == "") {
        f = fso.GetFile(nm);
        f.Name = +nm - 1;
        f.Close
    }
};

Всего записей: 4158 | Зарегистр. 03-02-2011 | Отправлено: 16:36 26-12-2019
iglezz

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

Цитата:
Не нужна chcp: буквы с хвостиками отображаются нормально и без нее, а иероглифы - нет и с ней. Пробовал со шрифтами Consolas и Lucida Console.

У меня не так: Подробнее...
Хз почему во втором случае pause заговорил на английском

Всего записей: 1521 | Зарегистр. 18-02-2003 | Отправлено: 18:17 26-12-2019 | Исправлено: iglezz, 18:19 26-12-2019
VVL99

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

Цитата:
сценарий переименования имени всех файлов с вычетанием 1
Можно и с прибавлением сделать, но в JS это немного сложнее чем вычитание.

Всего записей: 4158 | Зарегистр. 03-02-2011 | Отправлено: 20:32 26-12-2019
GCRaistlin



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
iglezz
Это какой-то особый MS Gothic? У меня добавить в шрифты для консоли тот, что идет в комплекте с Windows, не получилось. Как, впрочем, и какой-либо другой. Пробовал так: https://www.techrepublic.com/blog/windows-and-office/quick-tip-add-fonts-to-the-command-prompt/

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

Всего записей: 3962 | Зарегистр. 18-04-2005 | Отправлено: 21:49 26-12-2019
iglezz

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GCRaistlin
Это какой-то десяточный msgothic.ttc (Файл набора шрифтов TrueType)

Всего записей: 1521 | Зарегистр. 18-02-2003 | Отправлено: 22:02 26-12-2019
GCRaistlin



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Разобрался с подключением шрифта в консоль. Оказывается, надо ориентироваться на имя шрифта, которое видно при его открытии, а не на имя в списке. Но родной MS Gothic в Восьмерке все равно не работает. А в Десятке, я смотрю, разрешили немоноширинные шрифты в консоли использовать, поэтому, вероятно, там работает.

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

Всего записей: 3962 | Зарегистр. 18-04-2005 | Отправлено: 22:30 26-12-2019
wadimuss

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

Код:
HKCU\Console\%%SystemRoot%%_system32_cmd.exe

там же можно управлять расположением CMD-окна
 
выполнить одноразово и забыть про проблему нерусских буков в консоле:

Код:
::фиксируем CMD окно в левом верхнем углу
Reg.exe add "HKCU\Console\%%SystemRoot%%_system32_cmd.exe" /v "WindowPosition" /t REG_DWORD /d "1638406" /f
::меняем шрифт и размер CMD окна на Lucida Console и 16 пиксель
Reg.exe add "HKCU\Console\%%SystemRoot%%_system32_cmd.exe" /v "FontSize" /t REG_DWORD /d "1048576" /f
Reg.exe add "HKCU\Console\%%SystemRoot%%_system32_cmd.exe" /v "FontFamily" /t REG_DWORD /d "54" /f
Reg.exe add "HKCU\Console\%%SystemRoot%%_system32_cmd.exe" /v "FontWeight" /t REG_DWORD /d "400" /f
Reg.exe add "HKCU\Console\%%SystemRoot%%_system32_cmd.exe" /v "FaceName" /t REG_SZ /d "Lucida Console" /f

 
ЗЫ. ветка для 32-битного cmd.exe

Всего записей: 1029 | Зарегистр. 24-11-2008 | Отправлено: 06:09 27-12-2019 | Исправлено: wadimuss, 06:11 27-12-2019
Death_INN

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В ком строке набираю pause > null и в текущем каталоге создается файл с именем null
Так и должно быть?

Всего записей: 3025 | Зарегистр. 24-10-2002 | Отправлено: 00:22 30-12-2019
GCRaistlin



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

Код:
 
pause > nul
 


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

Всего записей: 3962 | Зарегистр. 18-04-2005 | Отправлено: 00:24 30-12-2019
Jonmey

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

Цитата:
В ком строке набираю pause > null и в текущем каталоге создается файл с именем null  Так и должно быть?

Разумеется.
Результат же  
pause >nul
будет иным
https://ss64.com/nt/pause.html

Всего записей: 1316 | Зарегистр. 17-01-2011 | Отправлено: 00:31 30-12-2019
nikisakis

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ребят, будьте добры подскажите как можно сделать такое...
Есть 500(для примера) папок C:\test\500
В каждой папке несколько тысяч небольших txt файлов.
Текст в файлах идет построчно. Строки кончаются . ! ?
Как из рандомного количества строк сделать рандомное количество абзацев? (например от 2 до 10 абзацев).

Всего записей: 16 | Зарегистр. 26-12-2019 | Отправлено: 05:32 31-12-2019
Vagranthermit



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как в батнике организовать проверку - в какой оси он запускается, в Win10 или в XP? Типа того, что если запускается из XP, то переход по метке, или если запускается из Win10, то переход по метке. Возможно такое вообще?

Всего записей: 55 | Зарегистр. 20-04-2015 | Отправлено: 14:44 03-01-2020
iglezz

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vagranthermit
Если последние несколько страниц пролистать -- множество примеров можно будет увидеть.

Всего записей: 1521 | Зарегистр. 18-02-2003 | Отправлено: 14:49 03-01-2020
GCRaistlin



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Vagranthermit
http://forum.ru-board.com/topic.cgi?forum=5&topic=48565&start=3300#3

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

Всего записей: 3962 | Зарегистр. 18-04-2005 | Отправлено: 15:16 03-01-2020
Death_INN

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Можно ли как-то оптимизировать этот код (прописан в реестре), чтобы обойтись без расширенной обработки?

Код:
cmd.exe /v:on /q /c color 17 & set ss=%1 & set ss="!ss:~0,-2!" & (for %%a in (!ss!) do handle.exe -accepteula -nobanner %%a) & pause

Всего записей: 3025 | Зарегистр. 24-10-2002 | Отправлено: 16:38 03-01-2020
GCRaistlin



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

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

То есть?

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

Всего записей: 3962 | Зарегистр. 18-04-2005 | Отправлено: 19:01 03-01-2020
Death_INN

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GCRaistlin, этот код выполняется при выборе пункта (который делал сам) из контекстного меню любого файла. Чтобы handle.exe отрабатывала правильно, приходится подсовывать ей полный путь с обрезанным последним символом

Всего записей: 3025 | Зарегистр. 24-10-2002 | Отправлено: 19:13 03-01-2020 | Исправлено: Death_INN, 19:20 03-01-2020
   

Страницы: 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

Компьютерный форум Ru.Board » Компьютеры » Программы » Командная строка, батники, сценарии (bat, cmd)
Maz (19-09-2020 13:36): Командная строка, батники, сценарии (bat, cmd) Часть 6


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru