[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理for命令里边可以嵌套set命令吗?

  1. set /p IP=请输入
  2. echo %IP%>tmp
  3. for /f "delims=. tokens=1,2,3,4" %%a in (tmp) do (
  4. echo %%a.%%b.%%c.%%d
  5. )
复制代码
请问有什么方法可以不输出到tmp文件,而是直接用for命令嵌套set吗?

  1. set /p IP=请输入
  2. setlocal ENABLEDELAYEDEXPANSION
  3. for /f "delims=. tokens=1,2,3,4" %%a in ("!ip!") do (
  4. )
复制代码

TOP

  1. set /p IP=请输入
  2. for /f "tokens=1-4 delims=." %%a in ("%IP%") do echo %%a.%%b.%%c.%%d
复制代码
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)

TOP

  1. @echo off
  2. setlocal ENABLEDELAYEDEXPANSION
  3. :1
  4. set "ip="
  5. for /l %%1 in (1,1,4) do (
  6.        set /p p=.
  7.        set "ip=!ip!!p!"
  8.        if %%1==4 goto :2
  9.        set "ip=!ip!."
  10.        )
  11. :2
  12. echo %ip%
  13. pause>nul
复制代码
世界上没有学不会的知识,也没有想得到却做不到的事!

TOP

返回列表