2016-06-16 2 views
0

У меня есть этот короткий config.txt с 2 линииwin7 - партия - Изменение числа/строки в текстовом файле

Preamp: 11dB 
Include: example.txt 

Есть ли способ для партии, чтобы найти номер перед dB и заменить его либо 1 higher или 1 lower?

+0

Слишком много способов подсчета, действительно. Что вы пробовали? Просто из любопытства, это для Equalizer APO, правильно? – rojo

+0

yep это, попытался обменять строку, но не знаю, как взять число как переменную, я действительно не использую пакет много – c422

+0

Вы читаете строку и отбрасываете все, кроме номера. Легкий способ сделать это - использовать второй токен строки '11dB' и установить' d' в качестве символа конца строки. 'for/f 'usebackq eol = d tokens = 2" %% I in ("% configfile%") do if not defined dB set/a dB = %% I + 1' или '- 1' – rojo

ответ

1
@ECHO OFF 
REM read two lines: 
<config.txt (
    set /p "line1=" 
    set /p "line2=" 
) 
REM isolate the number: 
set "line1=%line1:* =%" 
set "line1=%line1:dB=%" 
REM add one: 
set /a line1+=1 
REM write new file: 
>config.txt (
    echo Preamp: %line1%dB 
    echo %line2% 
) 
+0

Вот почему я на этом сайте. Вы все время изучаете новый трюк. Это перенаправление - потрясающе. +1 –

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