Board logo

标题: [文本处理] 批处理重定向的<怎么用? [打印本页]

作者: lj84831253    时间: 2010-4-18 20:53     标题: 批处理重定向的<怎么用?

  1. @echo off
  2. N < 2.txt
  3. echo %N%
  4. pause
复制代码
假设我的2.txt里边写着:55555555
作者: hanyeguxing    时间: 2010-4-18 20:57

原帖由 lj84831253 于 2010-4-18 20:53 发表
代码如下:
@echo off
N < 2.txt
echo %N%
pause
假设我的2.txt里边写着:55555555
但是为什么输出结果是


重定向符的全名叫“命令重定向操作符 (Redirection Operators)”,也就是说,它是为命令进行重定向的。
N < 2.txt,你的这句,谁是命令?
批处理文件是无格式的文本文件,它包含一条或多条命令。
N < 2.txt,你的这句,谁是命令?
  1. @echo off
  2. set/p N=<2.txt
  3. echo.%N%
  4. pause
复制代码
set/p只读文本第一行,要读更多的行,使用for /f解析文本
  1. @echo off
  2. for /F "delims=" %%a in (2.txt) do echo.%%a
  3. pause
复制代码

[ 本帖最后由 hanyeguxing 于 2010-4-18 21:11 编辑 ]
作者: lj84831253    时间: 2010-4-18 21:10

还是不行啊。。语法命令不正确。
作者: hanyeguxing    时间: 2010-4-18 21:12

原帖由 lj84831253 于 2010-4-18 21:10 发表
还是不行啊。。语法命令不正确。

不好意思,刚打错一个字符
作者: lj84831253    时间: 2010-4-18 21:18

原帖由 hanyeguxing 于 2010-4-18 21:12 发表

不好意思,刚打错一个字符
可以了,谢谢你!~还有,我发的另一帖都没人回答,不知道你是否知道,就是关于wget的代理设置的问题。
作者: lj84831253    时间: 2010-4-18 21:20

  1. grep "(*) " 1.txt > 2.txt
  2. set/p N=<2.txt
复制代码
看我这个代码,能不能把两个步骤化为一步?直接grep到N。?
作者: lj84831253    时间: 2010-4-18 21:32

如果2.txt里边有汉字好像输出会乱码。
作者: GNU    时间: 2010-4-18 21:42     标题: 回复 6楼 的帖子

  1. @echo off
  2. for /f "delims=" %%a in ('grep "(*) " 1.txt') do (
  3.     set "N=%%a"
  4. )
复制代码





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