Удалить строку до первого появления символа, используя пакетный скрипт - PullRequest
0 голосов
/ 19 марта 2019

У меня есть переменная, скажем

var="dev02,qa02,stage,prod,dev02_loc,qa02_loc,stage_loc,prod_loc"

Мне нужно преобразовать это в

qa02,stage,prod,dev02_loc,qa02_loc,stage_loc,prod_loc

, удалив все символы до первого вхождения ,

Как я могу сделать это с помощью пакетного скрипта?

Ответы [ 2 ]

4 голосов
/ 19 марта 2019

Что вы можете сделать, это использовать расширение и подстановку переменных.

В этом случае, учитывая ваше заявленное переменное содержание:

dev02,qa02,stage,prod,dev02_loc,qa02_loc,stage_loc,prod_loc

Вы можете просто развернуть переменную, подставив все до первой запятой, ничего:

Echo(%var:*,=%

Для установки исходной переменной %var% вы должны изменить синтаксис следующим образом:

Set "var=dev02,qa02,stage,prod,dev02_loc,qa02_loc,stage_loc,prod_loc"

Это предотвратит включение двойных кавычек в значение переменной, предотвратит случайные пробелы и защитит содержимое.

2 голосов
/ 19 марта 2019

Вы можете использовать цикл for (см. for /?) delimit на , и сделать что-то с результатом:

@set "var=dev02,qa02,stage,prod,dev02_loc,qa02_loc,stage_loc,prod_loc"
@for /f "tokens=1* delims=," %%i in ("%var%") do @echo(%%j
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...