Нужно слепить .bat |
Здравствуйте Гость [ Вход | Регистрация ] | Форум в сети 6732-й день
![]() |
Шановні користувачі! Запрошуємо вас до офіційного телеграм-канала 0day Community. Тут ви зможете поспілкуватися одне з одним та дізнатися про останні новини щодо роботи ресурса, поставити запитання до адміністрації, тощо. Перейти до телеграм-канала можна відсканувавши QR-код або натиснувши на посилання: @zeroday_ua |
Нужно слепить .bat |
Blackone |
Пост
#1
|
Благодарности: 143803 Репутация: ![]() ![]() Melomaniac ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 5 028 С нами с: 18-July 06 ![]() |
Товарищи, прошу помощи.
Так как уже надоело каждый раз заниматься лишними движениями, которые занимают много времени, хотел создать батник со следующими функциями: 1. Создает файл 1.atc с указанными строками (тут я допустим, разобрался) » Нажмите, чтобы показать спойлер - нажмите опять, чтобы скрыть... « 2. Копирует этот файл в каждую из подпапок в одной директории.Например, у меня по пути C:\AGServer\Conf\ лежит порядка 1500 папок с уникальным номером серийным, но копировать не обязательно во все, было бы архикруто прикрутить список конкретных, по типу как в тотале можно задать диапазон переименования (допустим в папки с последовательным диапазоном 0160400 по 0161499, или четко указанные 2035321, 1338611, 0368246) Сообщение отредактировал Blackone - Oct 26 2016, 12:32 |
![]() ![]() |
Dr.Sydorenko |
Пост
#2
|
Репутация: ![]() ![]() Старожил ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 2 163 С нами с: 27-June 12 ![]() |
По п.2 мне видится команда FOR читающая список из файла
|
P.L.U.R. |
Пост
#3
|
Репутация: ![]() ![]() non-mainstream activist ![]() ![]() ![]() ![]() ![]() Группа: BANNED Сообщений: 7 042 С нами с: 4-March 08 ![]() |
Человеку бы весь код подсказали.
ИМХО на мой непрофессиональный взгляд там делов на 20 минут для бакалавра факультета ИТ Но да, по п.2 функция c for * in * if * than * else() Прошу прощения за намёк на говнокод не для командной строки ![]() Сообщение отредактировал P.L.U.R. - Oct 26 2016, 14:53 |
Dr.Sydorenko |
Пост
#4
|
Репутация: ![]() ![]() Старожил ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 2 163 С нами с: 27-June 12 ![]() |
Я, конечно, дико извиняюсь, но:
1. FOR /? никто не отменял. Там есть хорошие примеры. Набор параметров сильно зависит от версии ОС. 2. if * than * как ни странно, в BAT-файлах не работает. |
Carnifex |
Пост
#5
|
Репутация: ![]() ![]() Дух Группа: Пользователи Сообщений: 179 С нами с: 5-July 09 ![]() |
@echo off
Setlocal EnableDelayedExpansion cls set currentDirectory=%CD% FOR /D %%g IN ("*") DO ( Pushd %CD%\%%g FOR /D %%f IN ("*") DO ( copy "%currentDirectory%\1.atc" "%%~ff" ) Popd ) pause Батник и 1.atc должен быть в одной директории с той папкой, которая имеет ПОДпапки, в которые нужно этот файл запихать. |
Blackone |
Пост
#6
|
Благодарности: 143803 Репутация: ![]() ![]() Melomaniac ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 5 028 С нами с: 18-July 06 ![]() |
|
Carnifex |
Пост
#7
|
Репутация: ![]() ![]() Дух Группа: Пользователи Сообщений: 179 С нами с: 5-July 09 ![]() |
С процентами - это переменные. %~ff - это уже действие над переменной f (полное имя просто взять). Двойные знаки процента - это для batch файла (*.bat) - если бы мы писали в cmd - знак процента был бы одинарный.
На самом деле, можно братиться к документации для команды FOR - там все описано. cmd FOR loop когда-то в универе помню условие задавали в каком-то языке либо "0160400..0161499", либо "2035321,1338611,0368246" сработает ли тут такое? Сработает. Параметры в таком виде можо записывать после ключевого слова token=. Если есть необходимость, конечно (в вышеуказанной документации более развернутое пояснение). Сообщение отредактировал Carnifex - Oct 27 2016, 14:27 |
![]() ![]() |
![]() |
Упрощённая версия | Сейчас: 20th August 2024 - 14:05 |
Сайт не розміщує електронні версії творів, а займається лише колекціонуванням та каталогізацією посилань, що публікуються нашими користувачами. Якщо Ви є правовласником якоїсь частини опублікованого матеріалу та не бажаєте, щоб посилання на нього знаходилось в нашому каталозі, зв’яжіться з нами і ми видалимо його. Файли для обміну надані користувачами сайту і адміністрація не несе відповідальності за їх вміст. |