标题: [已结]set/p=**<nul 作输出时 <nul 表示什么?
[打印本页]
作者: skuny
时间: 2009-1-8 14:54
标题: [已结]set/p=**<nul 作输出时 <nul 表示什么?
如:
@echo off
set str=!好你,,,,
for /l %%a in (6 -1 0) do call set /p=%%str:~%%a,1%%<nul
echo.&pause
有<nul就输出 ,,,,你好!
没有<nul就输出 ,
为什么?
<nul表示什么意思?
[
Last edited by HAT on 2009-1-9 at 12:32 ]
作者: linee
时间: 2009-1-8 15:02
<nul 表示从空设备输入
相当于echo不换行的效果
作者: skuny
时间: 2009-1-9 10:25
没有<nul那么输出的应该是
,
,
,
,
你
好
!
为什么for循环没有执行下去。只输出了,
作者: tireless
时间: 2009-1-9 12:06
Quote: |
Originally posted by skuny at 2009-1-9 10:25 AM:
没有<nul那么输出的应该是
,
,
,
,
你
好
!
为什么for循环没有执行下去。只输出了, |
|
你被
<nul 弄糊涂了 ^_^ 先回到最基本的命令:
set /p input=请输入:
以上命令能理解吧?即,
暂停等待用户输入,所以你所说的“去掉 <nul”,当然不会再执行下去,而是等待用户输入;
< 是一个“输入”符号,所以
<nul 代替了手工输入,从而结束了这条命令;
至于
不会换行,是由于没有输入
回车符。
理解了上述原因后,试试执行以下两条命令,也会有
不换行的效果:
set /p=不换行<test.txt
echo a|set /p=不换行
作者: skuny
时间: 2009-1-9 12:31
*^_^*!!!!谢谢!!
解惑了