Board logo

标题: [文本处理] [已解决]批处理如何读取文件中内容作为参数? [打印本页]

作者: 滴血雄鹰    时间: 2021-4-30 16:57     标题: [已解决]批处理如何读取文件中内容作为参数?

如何读取文件中内容作为参数?

原代码:
echo.
set /p ip=请输入服务器ip:
echo.
set /p pass=请输入密码:

服务器ip和密码得手工输入,代码怎样修改后,不需要输入,就能从下面的SYS.INI文件中读取相应的内容?

SYS.INI文件内容:

服务器IP:192.168.1.201
服务器密码:123456
重置时间:60
作者: 1152    时间: 2021-4-30 17:40

建议读取的文件内容直接就是参数,代码等一会再发给你。
作者: cutebe    时间: 2021-4-30 20:31

用for分析文本得到参数
  1. @echo off
  2. for /f "tokens=1-2 delims=:" %%i in (SYS.INI)do set "%%i=%%j"
  3. set ip=%服务器IP%
  4. set pass=%服务器密码%
  5. echo IP:[%ip%]  MM:[%pass%]
  6. pause
  7. goto :eof
复制代码

作者: qixiaobin0715    时间: 2021-4-30 20:32

  1. @echo off
  2. for /f "tokens=1,2 delims=:" %%a in ('type sys.ini') do (
  3. if "%%a"=="服务器IP" set ip=%%b
  4. if "%%a"=="服务器密码" set pass=%%b
  5. )
  6. echo,%ip%
  7. echo,%pass%
  8. pause
复制代码

作者: 1152    时间: 2021-4-30 22:23

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set row=0
  4. for /f "tokens=*" %%i in (SYS.INI) do (
  5. set /a row=row+1
  6. if !row!==1 set ip=%%i
  7. if !row!==2 set pass=%%i
  8. if !row!==3 set sj=%%i
  9. )
  10. echo %ip%
  11. echo %pass%
  12. echo %sj%
  13. pause
复制代码

作者: newswan    时间: 2021-5-1 11:22

本帖最后由 newswan 于 2021-5-1 11:23 编辑

ini 用变量名
  1. timeout : 90
  2. 或者
  3. timeout=90
复制代码
批处理
  1. set %%a=%%b
  2. 或者
  3. set %%a
复制代码

作者: 1152    时间: 2021-5-3 11:53

本帖最后由 1152 于 2021-5-3 11:58 编辑

回复 6# newswan





欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2