@echo off setlocal enableextensions enabledelayedexpansion set kmlfiles_input_dir=%~dp0 set kmlfiles_output_dir=%~dp0 set kmlfiles_output_lngpostfix=_ru if not ""=="%1" ( set kmlfiles_input_dir=%1 ) if not ""=="%2" ( set kmlfiles_output_dir=%2 ) if not ""=="%3" ( set kmlfiles_output_lngpostfix=%3 ) if not exist "!kmlfiles_output_dir!" ( md "!satellites_files_dir!" || ( echo *** Could not find directory !kmlfiles_output_dir!. Exiting. goto :ENDOFSCRIPT ) ) for /f "usebackq delims=*" %%L in (`dir /b /s /a-d "!kmlfiles_input_dir!\*.kml"`) do ( echo --------------------------------------------------------------------- echo KML file: %%~nxL echo --------------------------------------------------------------------- set csvfile=!kmlfiles_output_dir!\%%~nL!kmlfiles_output_lngpostfix!.csv echo.>"!csvfile!" echo. set kmlfile=%%L set kn= set ks= for /f "tokens=2,3 delims=<>" %%A in ('findstr /i "<name> <state>" "!kmlfile!"') do ( for /f %%C in ('echo %%A^|findstr /i "name"') do ( call :W2RS set kn=%%B set ks= ) for /f %%C in ('echo %%A^|findstr /i "state"') do ( set ks=%%B call :W2RS set kn= set ks= ) ) call :W2RS echo. echo Done^^! echo. ) pause :ENDOFSCRIPT endlocal goto :RETURN :W2RS REM ::*************************************************************************** REM :: Function : ----- REM :: Description : ----- REM :: On enter : kn, ks, csvfile REM :: On return : kn, ks REM :: Used : REM ::*************************************************************************** if not ""=="!kn!" ( echo !kn!^;!ks! set trstr=!kn! call :TR set kn=!trstr! set trstr=!ks! call :TR echo !kn!^;!trstr!>>"!csvfile!" ) goto :RETURN :TR REM ::******************************************** REM :: Function : Translate REM :: Description : Translates string to russian REM :: On enter : trstr REM :: On return : trstr REM :: Used : %Y, %Z, _transurl REM ::******************************************** if not ""=="!trstr!" ( set trstr=!trstr: =%%^20! for /f "tokens=3 delims=:" %%Y in ('curl -A "Opera/9.80 (Windows NT 6.0; U; ru) Presto/2.8.131 Version/11.11" "http://translate.google.ru/translate_a/t?client=x&text=!trstr!" 2^>nul ^|findstr /i " ""orig"""') do ( set trstr=%%Y set trstr=!trstr:"=,! for /f "tokens=1 delims=," %%Z in ("!trstr!") do ( echo %%Z set trstr=%%Z ) ) ) goto :RETURN :RETURN |