Ru-Board.club
← Вернуться в раздел «Программы»

» Командная строка, батники, сценарии (bat, cmd)

Автор: tdmods
Дата сообщения: 04.07.2016 10:31
Написал вчера сам вот такой код.

set process=Memu.exe
goto checker
:check
cls
echo Process %process% is still running...
:checker
tasklist /FI "IMAGENAME eq %process%" /NH | findstr /i "%process%">nul
if %errorLevel% == 0 goto :check
TASKKILL /F /IM "adb.exe"
TASKKILL /F /IM "MEmuConsole.exe"
pause

Но нужно кое что добавить: запустить процесс, дождаться его завершения, а уже потом убить остальные два, права администратора нужны и режим в фоне, но последние два по возможности.
Автор: king_stiven
Дата сообщения: 04.07.2016 16:32

Цитата:
запустить процесс, дождаться его завершения,

start "" /wait Memu.exe
Автор: tdmods
Дата сообщения: 04.07.2016 17:30
king_stiven
не дожидаясь завершения программы, пытается убить оба процесса.
Автор: king_stiven
Дата сообщения: 04.07.2016 18:26
start "" /D"C:\Program Files" /wait Memu.exe
Taskkill /F /IM notepad.exe /IM calc.exe

запустить процесс, дождаться его завершения, а уже потом убить остальные два

А лучше каждый раз пишите полностью что надо, все условия, бумагу жалеть не надо.
Автор: reenoip
Дата сообщения: 04.07.2016 18:38
Переехал на ноутбук с десяткой. В связи с постоянными изменениями устал бегать на Control Panel\All Control Panel Items\Display, чтобы вызывать это окошко:



Реально ли его вызов спрятать в какой-нибудь батник, чтобы открыть обычным двойным кликом?
Автор: tdmods
Дата сообщения: 04.07.2016 18:52
king_stiven

start D:\"Program Files"\Microvirt\MEmu\MEmuConsole.exe MEmu
start /wait D:\"Program Files"\Microvirt\MEmu\MEmu.exe
TASKKILL /F /IM "adb.exe"
TASKKILL /F /IM "MEmuConsole.exe"

Вот в чем была моя ошибка.
Автор: Xant1k
Дата сообщения: 06.07.2016 17:47
Подскажите есть возможность (если есть то и код готовый) зашифровать содержимое батника, чтобы открыв его блокнотом нельзя было увидеть код, но при этом батник выполнялся?
Автор: fakel33
Дата сообщения: 06.07.2016 21:33
Xant1k
Может стоит посмотреть здесь или здесь
Автор: silealio
Дата сообщения: 07.07.2016 03:00
Можно ли какой нибудь прогой в командной строке найти окно через WinApi FindWindow(), FindWindowEx()
Автор: Xant1k
Дата сообщения: 07.07.2016 03:37
fakel33
Может стоит сначала внимательно прочитать о чём вопрос?
Про конвертацию знаю.
Автор: suomifinland
Дата сообщения: 09.07.2016 23:02
Ребята помогите решить задачу...

Есть 48 папок с именами plspps_1... 48, и есть файлы 1...48.png, необходимо единовременно скопировать или перенести эти файлы в папки, но так чтобы в папку plspps_1 попал только файл 1.png, в папку plspps_2 попал файл 2.png, в папку plspps_3 попал файл 3.png и так далее до.., папки plspps_48 попал файл 48.png...

Реально ли это сделать...
Автор: Inoz2000
Дата сообщения: 09.07.2016 23:11
suomifinland
Код: for /l %a in (1,1,48) do copy %a.png plspps_%a
Автор: suomifinland
Дата сообщения: 09.07.2016 23:32
Пробовала запустить..., на мгновенье черное окошка батника.., и ничего... (((
Автор: drondo
Дата сообщения: 10.07.2016 20:37
Подскажите пожалуйста, возможно с помощью батника автоматизировать изменение конфига. Дано: абсолютно стандартный config.ini с абсолютно стандартным синтаксисом, пусть для примера будет

Код: [config0]
var1=1
var2=2
var3=3
[config1]
var10=10
var20=20
var30=30
[config2]
var100=100
var200=200
var300=300
[config3]
var1000=1000
var2000=2000
var3000=3000
Автор: DenisRodman
Дата сообщения: 10.07.2016 20:59
Можно ли сделать батник, на такую вот задачу. В папке будут файлы одного расширения *.mpls имена их не важны, только расширение важно и содержимое. Насчёт содержимого, то будет идти поиск по маске и как только нахождение произойдёт, а таких совпадений в файле может быть несколько, то сразу идёт редактирование именно этого куска содержимого т.е. самой маски.

[more=Подробности поставленной задачи]Насчёт маски, что будет искаться и на, что заменяться, то хотел в блокноте выделить и показать, да не вышло, видно только в Hex Editor, и тут я подумал вот блин засада. Поэтому, я размещу две картинки, на первой выделю фрагмент маски поиска, а на второй покажу этот же кусок, но уже отредактированный, т.е. на это и должно заменяться.

Это ищем ......................... На это заменяем
..........................

Там концовка маски всегда будет меняться либо 01 на 05 или если нужно по другому запустить батник, то 05 на 01. Но, что бы все 05-ки или 01-ки не менялись, я выделил большую маску, что бы уж точно, другое не находилось и не редактировалось.

Если, можно конечно это как-то автоматизировать в виде батника, то спасибо, если нельзя, то всё пойму, ну, а если есть решение моей задачи иными способами, то буду рад выслушать.

Хочу подчеркнуть, что самих файлов *.mpls в папке может быть около 1000, поэтому нужна обработка их всех одним заходом, и в каждом файле этих масок и точных совпадений будет примерно, ну не более 100 наверно. Вручную это дело перелопатить, очень долго, уже устал честно говоря, да я знаю, что есть опция ЗАМЕНИТЬ, но когда у меня тысячи этих файлов *.mpls и каждый нужно открыть, и в каждом осуществить поиск с заменой, то всё равно это превращается в ручной труд и очень долгий.[/more]
Заранее спасибо за любую помощь.

UPD:

Спасибо пользователю VitaminP и за его набор утилит, среди них есть как раз такая, которая ищет по HEX и заменяет.
Автор: VitaminP
Дата сообщения: 10.07.2016 22:22
DenisRodman
Вот несколько небольших утилит для замены фрагментов в файлах, может чего подойдёт: https://yadi.sk/d/Mava3DnRtAn8o
Автор: omamont
Дата сообщения: 10.07.2016 22:31
drondo 19:37 10-07-2016
Цитата:
возможно с помощью батника автоматизировать изменение конфига

приглядись. а вдруг (с помощью nircmdc) http://forum.oszone.net/post-2265679.html#post2265679
Автор: YuS_two
Дата сообщения: 10.07.2016 23:31
suomifinland

Цитата:
на мгновенье черное окошка батника.., и ничего...

Исходную задачу надо полнее описывать. Наводящий вопрос: перемещаемые файлы и целевые папки находятся в одном каталоге?

Автор: Inoz2000
Дата сообщения: 11.07.2016 00:01
YuS_two в TCIMG уже получилось.
Автор: Ivanov Ivan
Дата сообщения: 15.07.2016 00:10
В папке есть множество файлов в определённом порядке. Как с помощью командной строки объединить все файлы в папке?
Автор: Pasha_ZZZ
Дата сообщения: 15.07.2016 01:18
Ivanov Ivan
А что это за определенный порядок и кем/чем он определяется?
Автор: BorlandIMHO
Дата сообщения: 15.07.2016 08:44

Цитата:
есть множество файлов в определённом порядке. Как с помощью командной строки объединить все файлы


Код: copy /b /y nul result.bin
for /f %%A in ('dir /b "x:\path to\files\*.*"') do copy /b result.bin+"%%A"
Автор: Ivanov Ivan
Дата сообщения: 16.07.2016 00:42
Pasha_ZZZ
сортировка по числам.

BorlandIMHO
сложновато для меня... Итоговый файл в формате bin?
Автор: gjf
Дата сообщения: 16.07.2016 14:27
Уважаемые, возможно ли из командной строки обработать группу файлов и удалить все, которые меньше 1 Мб?

Upd: Кажется, сам разобрался, но решение только для последних версий ОС:

Код: robocopy Source Output /MIN:1000000
del Source
Автор: YuS_two
Дата сообщения: 16.07.2016 19:40
gjf

Цитата:
последних версий ОС

XP - это одна из последних версий windows?
Кроме того, есть средства и кроме robocopy, чтобы удалить файлы по размеру...
Автор: gjf
Дата сообщения: 17.07.2016 00:35
YuS_two
А в ХР есть robocopy?
Лично я вижу, что есть в серверных ОС. Внезапно оказалась в десятке. Потому написал то, что знал.
Автор: YuS_two
Дата сообщения: 17.07.2016 05:39
gjf

Цитата:
А в ХР есть robocopy?

По умолчанию, нет конечно. Но кто ищет, тот найдет путь, чтобы он там появился...
Автор: VitaminP
Дата сообщения: 17.07.2016 08:05
gjf
Можно и без robocopy обойтись, файл "Eraser.cmd" в кодировке 866:
Код: @ ECHO OFF
SET razm=1000000

IF "%1"=="" EXIT /b
FOR /r %1 %%i IN ( *.*) DO CALL :DelFile "%%i"
EXIT /b

:DelFile
IF %~z1 LSS %razm% ECHO Удаление "%~1" & DEL /q "%~1"
EXIT /b
Автор: Dallik
Дата сообщения: 17.07.2016 21:14
Привет. Столкнулся с задачей - удалить файлы с одинаковыми именами и разными расширениями (*.cr2 и *.jpg) в одной и той же папке. Всего папок, кстати, очень много и вложенность разная.
Нашел на просторах интернета такой батник:

Код: @ECHO OFF
FOR /F "usebackq delims=" %%i in ( `dir /b /s *.mp4` ) do (
IF EXIST "%%~dpni.mp3" (
DEL "%%i"
)
)
Автор: BorlandIMHO
Дата сообщения: 17.07.2016 23:25


Цитата:
сложновато для меня... Итоговый файл в формате bin?

Итоговый файл ровно в том же формате, что и исходные. Расширение вместо .bin можно ставить абсолютно произвольное. Вы же ничего не сообщили о формате исходных файлов.....

Цитата:
сортировка по числам.

В смысле по датам? Или цифровые имена у файлов? В любом из этих случаев у dir есть соответствующие ключи. dir /? в командной строке.

P.S. Если файлы просто текстовые, то ключик /b после команды copy добавлять не нужно



Цитата:
Что в скрипте не так? Подскажите, пожалуйста.

Очевидно дело именно в заменённых "странных кавычках". Курить справку по команде for и в частности ключику usebackq до полного просветления....

Страницы: 1234567

Предыдущая тема: Дубль


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.