求解 使用for或其他命令读取ini文件的第一行
bat吧
全部回复
仅看楼主
level 12
gregorº 楼主
我这有很多行 怎么忽略后面的
2016年03月19日 09点03分 1
level 12
@echo off&for /f "delims=" %%a in (config.ini) do echo %%a&goto next
:next
pause
2016年03月20日 11点03分 2
level 6
@ECHO OFF & SETLOCAL ENABLEDELAYEDEXPANSION
rem HS=行数,INI=ini文本
set STEP=0
set HS=1
set INI=1.ini
for /f "delims=" %%a in (!INI!) do (
set/a STEP+=1
if !STEP!==!HS! (
echo %%a
)
)
pause>nul
2016年03月20日 13点03分 3
多谢了
2016年03月20日 23点03分
为什么在for循环里面要用!var!获取变量的值啊?%var%不能用?
2017年09月26日 09点09分
level 12
[汗]set/p s=<xxx.ini
2016年03月20日 15点03分 4
level 10
@echo off
set /p as=<"文件路径.ini"
echo %as%
pause
:: 读取ini文件的第一行
2016年03月24日 04点03分 6
那么可以读取第二行货 或第三行吗
2016年03月24日 05点03分
@gregorº 可以,我写在下面了
2016年03月24日 08点03分
level 10
:: 读取第1234行[勉强]
@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%i in ('type "%~dp0文件路径.ini"') do (
set /a .a+=1
set ".b!.a!=%%i"
)
echo 第1行是 !.b1!
echo 第2行是 !.b2!
echo 第3行是 !.b3!
echo 第4行是 !.b4!
pause
2016年03月24日 05点03分 7
注意:变量 .a 左边有小数点( . )是为了防止和 %%i 重复使用
2016年03月24日 05点03分
回复
a42855333
:如果要一次读几行就直接后面加 !.b4! 1-100就可以了[勉强]
2016年03月24日 05点03分
回复 a42855333 :谢谢!
2016年03月24日 11点03分
回复
a42855333
:能否解释一下每一行的作用呢?
2016年03月24日 18点03分
level 10
应该是路径问题,把 %~dp0 这个删除改为 完整文件路径.ini 因为 %~dp0 是当年目录
@echo off
setlocal enabledelayedexpansion
for /f "usebackq delims=" %%i in ("完整文件路径.ini") do (
set /a .a+=1
set ".b!.a!=%%i"
)
echo 第1行是 !.b1!
echo 第2行是 !.b2!
echo 第3行是 !.b3!
echo 第4行是 !.b4!
pause
2016年03月25日 05点03分 9
%~dp0是当前目录
2016年03月25日 05点03分
回复
a42855333
:不小心把"前"写成"年"了[乖]
2016年03月25日 05点03分
回复 a42855333 :dp0是bat的路径吧,换成%cd应该好了
2016年03月25日 08点03分
1