Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

Ветеран


Сообщения: 27449
Благодарности: 8087

Профиль | Отправить PM | Цитировать


Цитата vogon_:
Ответ на мой вопрос дал Georgio, поэтому всё решено
Georgio, спасибо, всё работает »
Отнюдь:
Код: Выделить весь код
set apkName=SecSettings
set path=system/priv-app/SecSettings.apk=com.android.settings

call set "path=%%path:%apkName%=&rem %%"
echo [%path%]
Цитата:
Код: Выделить весь код
E:\Песочница\0382>0007.cmd

E:\Песочница\0382>set apkName=SecSettings

E:\Песочница\0382>set path=system/priv-app/SecSettings.apk=com.android.settings

E:\Песочница\0382>call set "path=%path:SecSettings=&rem %"

E:\Песочница\0382>echo [system/priv-app/  & rem .apk=com.android.settings]
[system/priv-app/
Переменная окружения содержит всю строку «system/priv-app/&rem .apk=com.android.settings». В этом легко убедиться, хотя бы исполнив «set path». Просто командный процессор при выводе переменной окружения по «echo» рассматривает «&» как специальный символ.

Цитата vogon_:
нужно в строке path откинуть все символы после подстроки apkName с этой подстрокой включительно. »
Следует воспользоваться рецептом от коллеги gora:
Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion

set sVar=bla-bla-bla-substring-bla-bla-bla
set sSubString=substring

set sLastPartVar=!sVar:*%sSubString%=!
set sResultVar=!sVar:%sLastPartVar%=!

echo [%sResultVar%]

endlocal
exit /b 0
Это сообщение посчитали полезным следующие участники:

Отправлено: 23:53, 09-07-2014 | #6