Board logo

标题: for 语句里引用变量不成功是怎么回事 [打印本页]

作者: wyd531     时间: 2007-1-13 07:37    标题: for 语句里引用变量不成功是怎么回事

for /f %%i in (mend.txt) do set w=%%i &&echo %w:~0,8% >>1.txt
我在批处理这段命令放送到1.txt里都是"w:~0,8"像这样的,
而我在命令行里用
for /f %i in (mend.txt) do set w=%i &&echo %w:~0,8% >>1.txt
这个就可能显示变量里的值
郁闷呀,不懂????


──────────────── 版务记录 ────────────────
执行:namejm
原标题:for 循环问题
修改后标题:for 语句里引用变量不成功是怎么回事
说明:因原标题过于模糊,不便于论坛的搜索和管理,在本提示发表三日之后,
  楼主尚未更改标题,现由本人强制修改标题,并扣除楼主2点积分。
──────────────── 版务记录 ────────────────


[ Last edited by namejm on 2007-1-17 at 10:14 PM ]
作者: xuzhenhui     时间: 2007-1-13 08:11
我也是只菜鸟,顺便问一个:set x=%random:~-2%
echo %x%>>random.txt
%0
"%random%"是产生一个32768内的随机数,其中的"~-2"是什么意思?
作者: lxmxn     时间: 2007-1-13 09:00


  Quote:
Originally posted by wyd531 at 2007-1-12 18:37:
for /f %%i in (mend.txt) do set w=%%i &&echo %w:~0,8% >>1.txt
我在批处理这段命令放送到1.txt里都是"w:~0,8"像这样的,
而我在命令行里用
for /f %i ...


  这个问题要用到变量的延迟,请搜索论坛的相关帖子。

  你说的命令行可以,那是错误的,命令行要这样才行:
for /f %i in (meng.txt) do @set w=%i&call echo %w:~0,8%

作者: lxmxn     时间: 2007-1-13 09:05


  Quote:
Originally posted by xuzhenhui at 2007-1-12 19:11:
我也是只菜鸟,顺便问一个:set x=%random:~-2%
echo %x%>>random.txt
%0
"%random%"是产生一个32768内的随机数,其中的"~-2"是什么意思?

理解变量的字符截取功能(点此前往)
作者: ytfsse     时间: 2007-1-15 12:49
谢谢啦
作者: zhouxiaohuanv     时间: 2007-7-6 11:17
学习~