
如何实现批处理读取txt文件的内容后保存到数组中
请问各位大侠,txt文件里面存放的是路径,我想实现把txt里面的每一行路径读取出来然后分别cd一下然后执行一个步骤,该如何实现呢?用变量保存每次都是打印第一行的,所以我觉...
请问各位大侠,txt文件里面存放的是路径,我想实现把txt里面的每一行路径读取出来然后分别cd一下然后执行一个步骤 ,该如何实现呢?用变量保存每次都是打印第一行的,所以我觉得应该用数组来存放获取到的路径。
我写了部分代码:
@echo off
set lines=0
for /f "tokens=1" %%a in (1.txt) do (
set /a lines+=1
)
echo 总行数为%lines%
rem 这里想定义一个数组来保存,不会了
SET Obj_Length=%lines%
下面的大侠已经说的差不多了,可是获取的路径都往前进了一位。比如我存放的路径是c:\aa\bb\cc,下面的脚本获取的是c:\aa\bb.求解啊! 展开
我写了部分代码:
@echo off
set lines=0
for /f "tokens=1" %%a in (1.txt) do (
set /a lines+=1
)
echo 总行数为%lines%
rem 这里想定义一个数组来保存,不会了
SET Obj_Length=%lines%
下面的大侠已经说的差不多了,可是获取的路径都往前进了一位。比如我存放的路径是c:\aa\bb\cc,下面的脚本获取的是c:\aa\bb.求解啊! 展开
1个回答
展开全部
不知道是这意思吗?
@echo off
setlocal enabledelayedexpansion
set lines=0
for /f "tokens=*" %%a in (1.txt) do (
if not defined a (set a=%%~dpa) else (set a=!a!;%%~dpa)
cd /d "%%~dpa"
rem 执行一个步骤
set /a lines+=1
)
echo %a%
echo 总行数为%lines%
SET Obj_Length=%lines%
pause
@echo off
setlocal enabledelayedexpansion
set lines=0
for /f "tokens=*" %%a in (1.txt) do (
if not defined a (set a=%%~dpa) else (set a=!a!;%%~dpa)
cd /d "%%~dpa"
rem 执行一个步骤
set /a lines+=1
)
echo %a%
echo 总行数为%lines%
SET Obj_Length=%lines%
pause
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询