Board logo

标题: [文本处理] 批处理如何提示最大的setlocal递归层? [打印本页]

作者: l43009456    时间: 2013-7-22 20:11     标题: 批处理如何提示最大的setlocal递归层?

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%i in (ip.txt) do {
  4. set ip=%%i
  5. echo !ip!
  6. }
  7. pause
复制代码
能执行成功,显示出ip地址
但echo !ip!改为ping -n 3 !ip!时候就输出已经达到 最大的setlocal递归层,为什么?
作者: Python    时间: 2013-7-23 09:29

http://www.bathome.net/thread-1224-1-1.html
作者: CrLf    时间: 2013-7-23 15:51

首先,{ } 要改成 ( )
其次,批处理不要命名为与外部命令重名的文件,比如 ping.bat,否则很容易被误认为是外部命令,或者把 ping -n 3 !ip! 写成 ping.exe -n 3 !ip! 也会好些
作者: l43009456    时间: 2013-7-24 19:18

回复 3# CrLf


    谢谢 按你说的果然能成功!!!!
作者: meiszp    时间: 2024-5-30 17:37

回复 3# CrLf
批处理不要命名为与外部命令重名的文件
谢谢!解决了问题。




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