标题: [其他] 【已结】如何把符号当正常的用 [打印本页]
作者: lockmove 时间: 2009-1-27 21:59 标题: 【已结】如何把符号当正常的用
题目实在不会取,不好意思了
比如有1.txt内容
1 2 3 | 4 5 abc|def
- for /f "delims=," %%i in (1.txt) do echo %%i
复制代码
这个是正确的
但是我要
- for /f "delims=," %%i in (1.txt) do set str=%%i
-
- echo %str%
复制代码
他就有问题了
应该就是|的问题
作者: pusofalse 时间: 2009-1-27 22:57
- @echo Off& setlocal EnableDelayedExpansion
- For /f "delims=" %%a in (a.txt) do set "str=%%a"
- Echo !str!
- :: For %%a in ("%str%") do echo %%~a
- Pause>nul & Exit /b
复制代码
作者: taojunyi 时间: 2009-1-27 23:13
这个是延迟变量的原因,不是别的。
setlocal enabledelayedexpansion
@echo off
for /f "delims=," %%i in (1.txt) do (
echo %%i
set str=%%i
echo !str!)
pause
作者: lockmove 时间: 2009-1-28 10:20
可能是我题意不清
我把全部都写出来吧.
1.bat内容- airserv-ng -c 1 -d "commview.dll|debug"
复制代码
change.bat内容- echo off&setlocal enabledelayedexpansion
- set /p a=频道:
- for /f "delims=" %%i in (1.bat) do set str=%%i
- echo !str!
- for /f "tokens=1,2,3*" %%i in ("%str%") do (echo %%i %%j %a% %%l>1.bat)
-
- pause
复制代码
我觉得这里延时不延时无所谓.
我要实现的目的是修改1.bat里的第3个数字
我试过了.没了"|"就可以
就是加了"|"才有错误.
作者: wxcute 时间: 2009-1-28 11:02
还好你写出来了,不然搞半天也不会成功,因为有引号与没有引号差别挺大。- @echo off
- set /p a=频道:
- for /f "delims=" %%i in (1.bat) do set str=%%i
- echo %str%
- for /f "usebackq tokens=1,2,3*" %%i in ('%str%') do (echo %%i %%j %a% %%l>1.bat)
- pause
复制代码
作者: lockmove 时间: 2009-1-28 14:54 标题: 回复 5楼 的帖子
谢谢版主,了解了.在没有usebackq 的时候 即使加了" " 还是可能认为是命令的吧?
作者: defanive 时间: 2009-1-28 15:13
版主出手了,我就不看贴了。。。
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |