工作中有一项任务是每月批量修改一次账户密码,涉及十几个密码和几十个脚本,手动修改费时费力,而且容易出错。根据网上的资料写了这个小脚本。
需求:
1.密码保存在password.txt 文件中,格式如下:
old new
zhang123 zhang321
wang456 wang654
2.需要将password.txt中的每密码,旧密码均替换为新密码,需要遍历多个文件。所以这里需要循环嵌套。
@echo off
rem 关闭显示
set file=./file1.xtxt
rem 定义文件
for /f "delims=" %%i in ('type "%file%"') do (
rem echo %%i for循环遍历文件file的每一行,并把每一行赋值给变量i
set str=%%i
rem 定义变量str 并将变量i赋值给变量str
for /f "tokens=1,2 delims= " %%i in (password.txt) do (
rem 遍历密码文件password.txt,将旧密码赋值给i,新密码赋值给j。 token=1,2的作用是取出第一列和第二列赋值给元素i,j。
set "str=!str:%%i=%%j!"
rem 替换字符串 j替换i
)
echo !str!>>"%file%"_temp.txt
rem 将替换后的字符串已追加的方式写入临时文件
)
pause
网友评论