11 / 11 / 1
Регистрация: 31.08.2012
Сообщений: 110
1

Вывод символов, расположенных после определённых символов в определённых строках заданного файла

13.06.2014, 04:10. Показов 2440. Ответов 11
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть файл "work/Разобранные/%capp%/apktool.yml" (Значение %capp% задаётся свыше...)
Такого типа:
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
version: 2.0.0-Beta9
apkFileName: Phonebook.apk
isFrameworkApk: false
usesFramework:
  ids:
  - 1
  - 2
sdkInfo:
  minSdkVersion: '15'
  targetSdkVersion: '19'
packageInfo:
  forced-package-id: '127'
versionInfo:
  versionCode: '33685532'
  versionName: 16.1.A.0.28
compressionType: false
unknownFiles:
  semcbuild-command.txt: '0'
Там записана инфа о файле Phonebook.apk, её нужно как-то вывести в echo!
Чтобы получилось примерно так:

Bash
1
2
3
4
Разобрано с помощью ApkTool v2.0.0-Beta9
Минимальная версия SDK 15
Версия Phonebook.apk : 16.1.A.0.28
Дополнительные файлы: semcbuild-command.txt
Как такое устроить?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
13.06.2014, 04:10
Ответы с готовыми решениями:

Удаление из файла текста, расположенного после определённых символов
Помогите пожалуйста. 1) С помощью BAT Необходимо в текстовом файле 1.txt (файл приложен) после...

Удаление из имён файлов определённых символов и сочетаний символов
Есть много обложек и в названиях присутствуют знаки "%2C+" и "+" (без кавычек) пример:...

Генератор рандомной последовательности из определённых символов и заданной длинны
как можно реализовать генератор рандомной последовательности из определённых символов и заданной...

Удаление из файла определённых частей текста
Есть: в файле txt множество строк Info: Packs: °={ON=true, GROUP="", INMSG="Отражение...

11
Эксперт WindowsАвтор FAQ
17996 / 7697 / 892
Регистрация: 25.12.2011
Сообщений: 11,470
Записей в блоге: 16
13.06.2014, 13:23 2
Примерно так:
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
@echo off
SetLocal EnableExtensions
 
set src=work/Разобранные/%capp%/apktool.yml
 
for /F "tokens=1*" %%a in ('type "%src%" | findstr /I /C:"version:" /C:"minSdkVersion:" /C:"versionName:"') do (
  if "%%a"=="version:" set ApkTool=%%b
  if "%%a"=="minSdkVersion:" set SDKmin=%%b
  if "%%a"=="versionName:" set Phonebook=%%b
)
 
echo Разобрано с помощью ApkTool %ApkTool%
echo Минимальная версия SDK %SDKmin%
echo Версия Phonebook.apk: %Phonebook%
pause
На счет "Дополнительные файлы" не совсем понятно.
Если файлы - то подразумевается, что их может быть несколько.
Нужно объяснение или более корректный пример, демонстрирующий все случаи.
1
11 / 11 / 1
Регистрация: 31.08.2012
Сообщений: 110
13.06.2014, 18:44  [ТС] 3
Цитата Сообщение от Dragokas Посмотреть сообщение
На счет "Дополнительные файлы" не совсем понятно.
Ну да там их несколько может быть, они лежат в папке unknown рядом с apktool.yml
И на счёт этого кода я его немного поправил для теста:
Bash
1
2
3
4
5
6
7
8
9
10
11
12
@echo off
set capp=SystemUI.apk
SetLocal EnableExtensions
for /F "tokens=1*" %%a in ('type "work/Разобранные/%capp%/apktool.yml" | findstr /I /C:"version:" /C:"minSdkVersion:" /C:"versionName:"') do (
  if "%%a"=="version:" set ApkTool=%%b
  if "%%a"=="minSdkVersion:" set SDKmin=%%b
  if "%%a"=="versionName:" set Phonebook=%%b
)
echo Разобрано с помощью ApkTool %ApkTool%
echo Минимальная версия SDK %SDKmin%
echo Версия %capp%: %Phonebook%
pause >nul
Запускаю, а он закрывается, он пишет "Непредвиденное появление: |."
И до правки он так-же закрывался
0
102 / 60 / 15
Регистрация: 29.01.2014
Сообщений: 119
13.06.2014, 19:45 4
Цитата Сообщение от Jeka_Osokin Посмотреть сообщение
Запускаю, а он закрывается, он пишет "Непредвиденное появление: |."
Попробуйте в четвёртой строке поставить двойные ковычки в скобках
Bash
1
for /F "tokens=1*" %%a in ('"type "work/Разобранные/%capp%/apktool.yml" | findstr /I /C:"version:" /C:"minSdkVersion:" /C:"versionName:""')
или
Bash
1
for /F "tokens=1*" %%a in ('type "work/Разобранные/%capp%/apktool.yml"^| findstr /I /C:"version:" /C:"minSdkVersion:" /C:"versionName:"')
1
11 / 11 / 1
Регистрация: 31.08.2012
Сообщений: 110
13.06.2014, 23:07  [ТС] 5
Цитата Сообщение от loban_ser Посмотреть сообщение
Попробуйте
Пример 1
[]http://cs616722.vk.me/v616722148/11e45/Pu3atAgA740.jpg[/]
Пример 2
[]http://cs616722.vk.me/v616722148/11e4c/5ZhvCoXF-wQ.jpg[/]

 Комментарий модератора 
Выкладывайте вложения через Расширенный режим -> Скрепка
0
Эксперт WindowsАвтор FAQ
17996 / 7697 / 892
Регистрация: 25.12.2011
Сообщений: 11,470
Записей в блоге: 16
13.06.2014, 23:31 6
Jeka_Osokin, выложите файл apktool.yml
0
11 / 11 / 1
Регистрация: 31.08.2012
Сообщений: 110
13.06.2014, 23:35  [ТС] 7
Цитата Сообщение от Dragokas Посмотреть сообщение
выложите
Дело в том что в work/Разобранные/ дофига папок в которых разные /apktool.yml!
Но раз уж так то вот
Вложения
Тип файла: zip apktool.zip (344 байт, 3 просмотров)
0
Эксперт WindowsАвтор FAQ
17996 / 7697 / 892
Регистрация: 25.12.2011
Сообщений: 11,470
Записей в блоге: 16
13.06.2014, 23:44 8
У меня все работает:
Миниатюры
Вывод символов, расположенных после определённых символов в определённых строках заданного файла  
0
Эксперт WindowsАвтор FAQ
17996 / 7697 / 892
Регистрация: 25.12.2011
Сообщений: 11,470
Записей в блоге: 16
14.06.2014, 00:03 9
Вероятно, неверно указали путь к исходному файлу.

Вот версия с учетом того, что unknown-файлов в ypk-файле может быть несколько.

Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
@echo off
SetLocal EnableExtensions EnableDelayedExpansion
 
set src=apktool (1).yml
 
for /F "tokens=1*" %%a in ('type "%src%" ^| findstr /I /C:"version:" /C:"minSdkVersion:" /C:"versionName:"') do (
  if "%%a"=="version:" set ApkTool=%%b
  if "%%a"=="minSdkVersion:" set SDKmin=%%b
  if "%%a"=="versionName:" set Phonebook=%%b
)
if defined SDKmin set "SDKmin=%SDKmin:~1,-1%"
set "AddFile="
For /F "delims=[]" %%a in ('find /n "unknownFiles:" ^< "%src%"') do set "ULine=%%a"
For /F "delims=: " %%a in ('more +%ULine% ^< "%src%"') do set "AddFile=!AddFile!%%a, "
if defined AddFile set "AddFile=%AddFile:~,-2%"
 
echo Разобрано с помощью ApkTool %ApkTool%
echo Минимальная версия SDK %SDKmin%
echo Версия Phonebook.apk: %Phonebook%
echo Дополнительные файлы: %AddFile%
pause
2
11 / 11 / 1
Регистрация: 31.08.2012
Сообщений: 110
14.06.2014, 00:13  [ТС] 10
Цитата Сообщение от Dragokas Посмотреть сообщение
У меня все работает
Во во! Я заметил вы добавили стрелочку вверх перед той палкой и findstr, а у меня без этого не робило, а щас робит спасибо!

Добавлено через 6 минут
Цитата Сообщение от Dragokas Посмотреть сообщение
Вот версия
Теперь всё пишет кроме дополнительных файлов, а в самом верху пишет "Не удается получить доступ к файлу E:\Android\+"
0
Эксперт WindowsАвтор FAQ
17996 / 7697 / 892
Регистрация: 25.12.2011
Сообщений: 11,470
Записей в блоге: 16
14.06.2014, 00:21 11
Цитата Сообщение от Jeka_Osokin Посмотреть сообщение
E:\Android\+
А какой реально путь у файла?
0
11 / 11 / 1
Регистрация: 31.08.2012
Сообщений: 110
14.06.2014, 01:09  [ТС] 12
Цитата Сообщение от Dragokas Посмотреть сообщение
путь у файла?
Я не совсем понял у какого, но вот все пути
ApkTool.yml - work\Разобранные\(например папка "SystemUI.apk" потому что их там много)\apktool.yml
Unknown - work\Разобранные\(например папка "SystemUI.apk" потому что их там много)\unknown\разные файлы
0
14.06.2014, 01:09
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
14.06.2014, 01:09
Помогаю со студенческими работами здесь

Удаление определённых строк из текстового файла
помогите, нужен батник удаляющий определенные строки из текстового файла.

Получение определённых значений из содержимого XML-файла
Уважаемые эксперты! Помогите пожалуйста в написании скрипта. Задача такая: есть файл, который...

Случайный выбор определённых слов при копировании одного файла в другой
Допустим копируется один файл в другой.copy /Y file1.txt file2.txt, необходимо, если к примеру в...

Вывод информации об определённых файлах из заданной директории в обратном алфавитном порядке имён этих файлов
Здравствуйте. Нужно создать пакетный файл, который будет выводить информацию о какой либо...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru