按utf-8码处理呢- 1>1/* :
- @echo off
- set mac=a4-4c-c8-17-97-c6
- for /f %%i in ('arp -a ^| find /i "%mac%"') do set ip=%%~i
- for /f "delims=:" %%i in ('findstr /inbc:"url=" "c:\test\producer.properties"') do set i=%%i
- setlocal enabledelayedexpansion
- cscript.exe -nologo -e:jscript "%~0" "c:\test\producer.properties" "!i!" "!ip!"
- pause & exit
- */
- function adoText(file, len, ip) {
- var t,stream,lines = [];
- var re = /^(url=)?(\d{1,3}\.){3}(\d{1,3})/;
- stream = new ActiveXObject("ADODB.Stream");
- stream.type = 2;
- stream.charset = 'utf-8';
- stream.open();
- stream.loadFromFile(file);
- while (!stream.EOS) {
- t = stream.readText(-2);
- if (lines.length == len) {t = t.replace(re, '$1' + ip)};
- lines.push(t);
- }
- stream.Position = 0;
- stream.writeText(lines.join('\r\n'));
- stream.saveToFile(file, 2);
- stream.close();
- }
- adoText(WSH.Arguments.Item(0),WSH.Arguments.Item(1)-1, WSH.Arguments(2));
复制代码 |