Войти

Показать полную графическую версию : Как прописать ожидание выполнения команды


Страниц : [1] 2

fly380
05-06-2012, 07:55
Решил написать батник для автоматизации прошивки телефона на базе Android.
Суть трудности (в частности для меня я в батниках только начал ковыряться) нужно выполнить команды
adb shell
su
После выполнения команды adb shell в терминале появляется символ $ и команда su не выполняется (все замирает).
Как прописать ожидание выполнения команды su и после ее ввода ручками продолжения выполнения команд из bat.
Или как сделать чтоб она прописывалась и нажимался Enter?
Устроят оба варианта, а то уже мозг кипит чем больше читаю тем сильнее закипаю)
P.S ногами не пинайте вот решил научиться, мануала много но вот совет нужен.

yurfed
05-06-2012, 08:31
fly380, пауза в 10 секунд.
ping -n 1 -w 10000 0.0.0.1 > nul

fly380
05-06-2012, 08:35
yurfed, не это не то(( паузу я умею написать мне нужно чтобы батник ждал ввода команды и после того как она будет введена и нажата клавиша Enter он продолжал выполнение следующих команд автоматически. Просто если задать паузу, ну и вывести через скрипт сообщение что нужно ввести команду su то пакет не выполняет дальнейшие команды.

RostVY
05-06-2012, 11:31
я не совсем в курсе, чего ждет adb и с чем его едят, то можно попробовать что-то типа

adb shell << somefile

а в somefile положить символ ентера (#0D, #0A или оба)

fly380
05-06-2012, 12:05
RostVY, за энтер спасибо, но не совсем то попробую написать по другому
adb shell - команда выполняется и ждет ввода следующей команды
adb shell $
Прописана следующая команда
su
Но она не выполняется (терминал замерзает после выполнения adb shell ), как я понял ее прийдется ввести ручками, для этого я выведу через скрипт соответствующее сообщение перед выполнением adb shell.
@echo var WSHShell = WScript.CreateObject("WScript.Shell"); > %temp%\mes.js
@echo WSHShell.Popup("Введите команду su и нажмите Enter"); >> %temp%\mes.js
@start %temp%\mes.js
adb shell
Так вот, как прописать в *.bat чтобы после того как команда su прописана и нажат Enter пакетный файл автоматически приступал к выполнению следующей строки
chmod 755 /data/local/flash_image
Другими словами ждал выполнения именно команды su. А и еще после выполнения команды su появляется символ рут # (если это важно).

RostVY
05-06-2012, 12:59
а если взять мой пример и в somefile написать su и ентер не работает?

fly380
05-06-2012, 13:10
RostVY, а можно разжевать не совсем понимаю как именно?

RostVY
05-06-2012, 13:22
создать файл somefile , в нем написать команды, которые должны были б вводиться с клавы. т.е.

su


а потом запустить

adb shell << somefile

fly380
05-06-2012, 13:34
RostVY, Спасибо!!! Вы человек с большой буквы))) (так работает adb shell < 1.txt) И сразу вопрос а можно в 1.txt задать несколько строк и как их вывести поочередно?

RostVY
05-06-2012, 13:48
думаю, что можно. попробуй напиши туда все комманды, которые нужно выполнить

как их вывести поочередно? »
это я не понял, чего надо

fly380
05-06-2012, 13:52
RostVY, а нет спасибо разобрался)) может и не правильно но работает.
В созданном 1.txt прописал несколько строк и думал над тем как их вывести по очереди. Ну решение пришло само собой достаточно после каждой команды оставить пустую строку она выполняет роль энтера ну и следующая за ней команда выводится))
su

chmod 755 /data/flash_image

fly380
05-06-2012, 14:15
Мда погорячился(( команда su выводится из 1.txt и выполняется корректно, а из этого же 1.txt вывести и выполнить следующую команду chmod 755 /data/local/flash_image?

RostVY
05-06-2012, 14:46
а это команда для adb shell?
в диаловом режиме выполняется правильно?
возможно, что в тхт-файле, ентеры нужно сохранять в юниксовом формате (LF #0A), а не в виндозном (CR+LF #0D+0A) либо только CR (#0D). и не забывайте ентер после chmod

fly380
05-06-2012, 15:06
RostVY, как не тыкаю он мне белеберду выдает
http://img221.imageshack.us/img221/9592/47455230f.gif
предыдущие команды из самого бат
adb push flash_image /sdcard/flash_image
adb shell выполняются корректно и команда su из 1.txt тоже, а дальше начинается бред(( или выводит команду chmod 755 /data/local/flash_image но не выполняет ее или вообще ругается чуть ли не матом.

RostVY
05-06-2012, 15:23
прицепи тхт-файлик

fly380
05-06-2012, 15:28
Да цеплять то по сути нечего, потому что я толком не могу понять как там прописать энтеры :(
Тыкал значения и так и так, они просто выводятся из txt и толку от этого ноль

RostVY
05-06-2012, 15:30
попробуй эти файлы. но не пересохраняй

http://forum.oszone.net/attachment.php?attachmentid=83289&stc=1&d=1338895864

fly380
05-06-2012, 15:30
сам батник сейчас выглядит так
@echo off
adb push flash_image /sdcard/flash_image
adb shell < 1.txt
@pause

RostVY
05-06-2012, 15:31
авось с каким-то проканает

adb shell < 1cr.txt

либо

adb shell < 1crlf.txt

либо

adb shell < 1lf.txt

fly380
05-06-2012, 15:36
Во всех случаях результат идентичен((
http://img607.imageshack.us/img607/3654/51246828.gif




© OSzone.net 2001-2012