|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - [решено] Усечение строки до указаной подстроки |
|
|
CMD/BAT - [решено] Усечение строки до указаной подстроки
|
Новый участник Сообщения: 6 |
Здравствуйте!
Задача звучит примерно так: нужно из обрезать строку к указанной подстроке. Выглядит так: set apkName=SecSettings set path=system/priv-app/SecSettings.apk=com.android.settings call set path=%%path:%apkName%=&rem %% echo %path% В чём может быть проблема? |
|
Отправлено: 17:48, 09-07-2014 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать vogon_, во-первых, не используйте системные и пользовательские переменные в качестве рабочих:
Цитата vogon_:
Цитата vogon_:
Цитата vogon_:
Опишите, что потребно получить. А не как. |
|||
Отправлено: 18:49, 09-07-2014 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Ветеран Сообщения: 874
|
Профиль | Отправить PM | Цитировать |
Отправлено: 18:58, 09-07-2014 | #3 |
Ветеран Сообщения: 2728
|
Профиль | Отправить PM | Цитировать Georgio, Красивая конструкция, но, Насколько я понял, обрезать строку не получилось, результат - обрезанная выдача искаженной исходной строки? Если сделать echo "%path%" можно это увидеть? Тогда непонятно: в чём задача?
|
------- Отправлено: 22:04, 09-07-2014 | #4 |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать Iska, ответ на первое замечание - спасибо, учту на будущее
![]() На второе - ожидаемый результат тот, который я указал, не иначе. По-крайней мере, я ожидал такой результат. На третье - так ведь указано. Объясню подробнее (я неясно выразился, прошу прощения) - нужно в строке path откинуть все символы после подстроки apkName с этой подстрокой включительно. Ответ на мой вопрос дал Georgio, поэтому всё решено ![]() Georgio, спасибо, всё работает ![]() Только в начале почему-то добавляется знак процента. А так всё супер! Благодарю) megaloman, комментарием выше я написал, в чём задача (правда, она уже решена). Спасибо за внимание, очень приятно, что так много отзывчивых людей! Удачи) |
|
Отправлено: 23:13, 09-07-2014 | #5 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата vogon_:
set apkName=SecSettings set path=system/priv-app/SecSettings.apk=com.android.settings call set "path=%%path:%apkName%=&rem %%" echo [%path%] Цитата:
Цитата vogon_:
|
|||
Отправлено: 23:53, 09-07-2014 | #6 |
Ветеран Сообщения: 874
|
Профиль | Отправить PM | Цитировать |
Отправлено: 07:23, 10-07-2014 | #7 |
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать Iska, но ведь у меня всё работает:
C:\>set apkName=SecSettings C:\>set path=system/priv-app/SecSettings.apk=com.android.settings C:\>call set "path=%path:%apkName%=&rem %" C:\>echo %path% system/priv-app/ В чём проблема? Дело в том, что после "&rem " всё делается комментарием, в этом фишка такой команды) То есть при использовании переменной path та часть, которая после знака комментария, не будет учитываться. Как бы там ни было, переменная имеет то значения, которое я хотел достать. Спасибо за помощь) |
Отправлено: 09:33, 10-07-2014 | #8 |
Ушёл из жизни Сообщения: 6021
|
Профиль | Отправить PM | Цитировать Цитата vogon_:
Цитата Iska:
|
||
Отправлено: 11:09, 10-07-2014 | #9 |
Ветеран Сообщения: 27449
|
Профиль | Отправить PM | Цитировать Цитата vogon_:
Покажите мне вывод того же кода, но с добавлением «[]» и «set path»: set apkName=SecSettings set path=system/priv-app/SecSettings.apk=com.android.settings call set "path=%%path:%apkName%=&rem %%" echo [%path%] set path Цитата vogon_:
Georgio, код из #7 отрабатывает корректно. |
||
Отправлено: 11:17, 10-07-2014 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Как повысить юзера до администратора из командной строки? | suvolod | Microsoft Windows NT/2000/2003 | 34 | 19-04-2016 07:21 | |
CMD/BAT - [решено] CMD Разрезание строки на подстроки | Acuna | Скриптовые языки администрирования Windows | 24 | 29-03-2014 22:59 | |
VBS/WSH/JS - [решено] Поиск подстроки в файле с последующей заменой подстроки (многопользовательский досту) | pogo | Скриптовые языки администрирования Windows | 12 | 06-12-2013 17:59 | |
CMD/BAT - [решено] Копирование\перенос строк с 1.txt до определённой строки\секции в 2.txt. | crimes | Скриптовые языки администрирования Windows | 7 | 11-06-2013 14:42 | |
Создание подстроки в Word'e | kop4enyi | Хочу все знать | 2 | 10-07-2008 12:55 |
|