2013-08-24 2 views
0

У меня есть длинная конфигурация игры, и я хочу сделать обзор в виде пакетного экрана.
Что я "м пытается сделать, это то, что пакетный скрипт смотрит на заданной линии, а затем выбирает инфо
Ex:.Пакет - поиск точной строки в файле

Налоговая ставка: 15
Администратор Рейтинг: 20
Mod Оценить: 18

Я хочу сценарий, чтобы посмотреть в строке 2 после 13 цифр (Admin Rate :) и установите outut в качестве переменной. Такие, как

для/е в DELIM = 2; 13 в ('') config.yml делать множество adminrate


Поэтому в конце я может выводить ясно все конфиги.

эхо Администратор Рейтинг:% adminrate%

ответ

1

Это просто выбирает 2-ю линию, если это необходимо.

EDITED, чтобы вернуть всю линию.

@echo off 
for /f "tokens=1,* delims=]" %%a in ('find /n /v "" ^< "config.txt" ^| findstr "^\[2\]" ') do set "variable=%%b" 
echo "%variable%" 
pause 

Обратите внимание, что если выбранная строка начинается с] символов, они будут удалены из строки.

+0

код выбирает только первый символ строки ... – ratouney

+0

Было бы неплохо, если бы он выбрал всю линию! Когда я его использую, он выбирает только первый символ ... Я использовал этот файл для проверки: [link] (http://pastebin.com/01LizNQz) Я изменил 'findstr"^\ [23 \] "' поэтому он выберет 23-ю строчку, но в итоге получится только скобки '' ''. есть идеи ? – ratouney

+0

Я изменил его, чтобы вернуть всю строку. – foxidrive

2

попробовать это:

for /f "tokens=3delims=: " %%a in ('findstr /c:"Admin Rate" "config.yml"') do set "adminrate=%%a" 
echo(%adminrate% 
+0

Я не знаком с командой for, но что это делает (так что я могу настроить его ..)? – ratouney

Смежные вопросы