中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-11 06:48
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 请教高手解释一下符号<和命令IF NOT defined!谢谢 查看 1,554 回复 6
楼 主 请教高手解释一下符号<和命令IF NOT defined!谢谢 发表于 2007-09-23 16:05 ·  中国 山西 太原 电信
初级用户
积分 56
发帖 22
注册 2006-12-13 10:54
19年会员
UID 73399
性别 男
状态 离线
如题
希望高手以举例方式告知,小弟不胜感激!
2 发表于 2007-09-23 18:00 ·  中国 北京 海淀区 联通
银牌会员
★★★
积分 1,287
发帖 634
注册 2007-05-02 15:06
19年会员
UID 87277
性别 男
来自 cmd.exe
状态 离线
自己搜索.
3 发表于 2007-09-23 21:33 ·  中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
<表示输入重定向
IF NOT defined表示“如果没有定义”
C:\>set a=1

C:\>if not defined a (echo yes) else (echo no)
no
4 发表于 2007-12-21 12:39 ·  中国 安徽 马鞍山 电信
中级用户
★★
拟谷盗
积分 312
发帖 108
注册 2007-01-21 11:36
19年会员
UID 77238
性别 男
状态 离线
使用 if not defined 可以删除重复行
for /f "delims=" %%i in (test.txt) do (
if not defined %%i set %%i=A & echo %%i>>test2.txt)
5 发表于 2007-12-22 11:01 ·  中国 广东 广州 电信
金牌会员
★★★★
一叶枝头,万树皆春
积分 2,564
发帖 1,127
注册 2006-12-25 22:57
19年会员
UID 74552
性别 男
状态 离线
Originally posted by fbwolf at 2007-9-23 04:05 PM:
如题
希望高手以举例方式告知,小弟不胜感激!





C:\>echo abcd>a.txt

C:\>set /p test=<a.txt

C:\>echo %test%
abcd

C:\>




C:\>set test=a

C:\>if defined test (echo 变量test存在) else (echo 变量test不存在)
变量test存在

C:\>if not defined test (echo 变量test不存在) else (echo 变量test存在)
变量test存在

C:\>set test=

C:\>if defined tset (echo 变量test存在) else (echo 变量test不存在)
变量test不存在

C:\>if not defined tset (echo 变量test不存在) else (echo 变量test存在)
变量test不存在

C:\>
6 发表于 2007-12-26 16:22 ·  中国 北京 华为云
银牌会员
★★★
永远的菜鸟
积分 1,335
发帖 574
注册 2007-11-27 12:50
18年会员
UID 103929
性别 男
来自 广西
状态 离线
终于明白一些了,非常感谢5楼!
7 发表于 2009-02-07 20:31 ·  中国 北京 联通
中级用户
★★
积分 313
发帖 162
注册 2007-04-02 06:45
19年会员
UID 83693
性别 男
状态 离线
使用 if not defined 可以删除重复行
for /f "delims=" %%i in (test.txt) do (
if not defined %%i set %%i=A & echo %%i>>test2.txt)

if not defined %%i set %%i=A & echo %%i>>test2.txt)中& 因该是&& 吧?
论坛跳转: