我有一个txt文本,想用bat把里面的字符“zx”替换成“45”
因为同时运行的其他代码有一部分需要管理员身份才行,而一旦取得管理员身份后所有代码都会以管理员身份运行
所以这部分也需要以管理员运行才行
在网上找了3组代码,测试的时候双击全都能用,但右键以管理员运行却反而都无效
请问有什么办法吗?
第一个是
@璐村惂鐢ㄦ埛_000076K馃惥 off
setlocal enabledelayedexpansion
set ty1=zx
set ty2=45
for /f "tokens=*" %%M in (test1.txt) do (
set var=%%M
set "var=!var:%ty1%=%ty2%!"
echo !var!>>test2.txt
)
endlocal
第二个是
@echo off &setlocal
set "search=zx"
set "replace=45"
set "textfile=test1.txt"
set "newfile=test2.txt"
(for /f "delims=" %%i in (%textfile%) do (
set "line=%%i"
setlocal enabledelayedexpansion
set "line=!line:%search%=%replace%!"
echo(!line!
endlocal
))>"%newfile%"
第三个是
@echo off
setlocal enableextensions disabledelayedexpansion
set "search=45"
set "replace=zx"
set "textFile=test1.txt"
for /f "delims=" %%i in ('type "%textFile%" ^& break ^> "%textFile%" ') do (
set "line=%%i"
setlocal enabledelayedexpansion
>>"%textFile%" echo(!line:%search%=%replace%!
endlocal
)
第四个是
powershell -Command "(gc test1.txt) -replace '45', 'zx' | Out-File -encoding ASCII test1.txt"
因为同时运行的其他代码有一部分需要管理员身份才行,而一旦取得管理员身份后所有代码都会以管理员身份运行
所以这部分也需要以管理员运行才行
在网上找了3组代码,测试的时候双击全都能用,但右键以管理员运行却反而都无效
请问有什么办法吗?
第一个是
@璐村惂鐢ㄦ埛_000076K馃惥 off
setlocal enabledelayedexpansion
set ty1=zx
set ty2=45
for /f "tokens=*" %%M in (test1.txt) do (
set var=%%M
set "var=!var:%ty1%=%ty2%!"
echo !var!>>test2.txt
)
endlocal
第二个是
@echo off &setlocal
set "search=zx"
set "replace=45"
set "textfile=test1.txt"
set "newfile=test2.txt"
(for /f "delims=" %%i in (%textfile%) do (
set "line=%%i"
setlocal enabledelayedexpansion
set "line=!line:%search%=%replace%!"
echo(!line!
endlocal
))>"%newfile%"
第三个是
@echo off
setlocal enableextensions disabledelayedexpansion
set "search=45"
set "replace=zx"
set "textFile=test1.txt"
for /f "delims=" %%i in ('type "%textFile%" ^& break ^> "%textFile%" ') do (
set "line=%%i"
setlocal enabledelayedexpansion
>>"%textFile%" echo(!line:%search%=%replace%!
endlocal
)
第四个是
powershell -Command "(gc test1.txt) -replace '45', 'zx' | Out-File -encoding ASCII test1.txt"