Цитата Iska:
VokaMut, понятней не стало. Что именно у Вас не получается? »
|
Код:
chcp 866
::файл для редактирования
set infile=1\file.po
::первое слово которое ищем в файле для замены
set find=findword
::последующие
set var1=Слово1
set var2=Слово2
set var3=Слово3
set var4=Слово4
::цикл проходит по каждой переменной выше
for /f "tokens=2* delims==" %%i in ('set var') do (
::задаем заменяющее слово
set replace=%%i
::заменяем его
@echo off
setlocal enabledelayedexpansion
for /F "tokens=* delims=," %%n in (!infile!) do (
set LINE=%%n
set TMPR=!LINE:%find%=%replace%!
echo !TMPR!>>tmp.txt
)
move tmp.txt %infile%
::преобразуем file.po в file.mo
msgfmt file.po -o file.mo
::архивируем всю папку с этим файлом и исключаем file.po
"C:\PROGRA~1\WinRAR\rar.exe" a -m5 -s -y -ep1 -r -x*"file.po" "2\%replace%.rar" "1\*.*"
::теперь ищем заменяеющее слово и заменяем его на следующее
set find=%rerep%
::сделал паузу для проверки
pause
)
После просмотра увидел что:
Код:
set replace=%%i
Задается правильно, но в итоге переменная find:
Код:
set find=%rerep%
Получается пустая...
Для проверки работоспособности архивирование и компилирование из po в mo можно опустить