中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-04 23:54
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 怎样排除计算机名执行另一段命令啊? 查看 895 回复 14
楼 主 怎样排除计算机名执行另一段命令啊? 发表于 2007-02-04 14:37 ·  中国 广东 广州 增城区 电信
初级用户
积分 74
发帖 34
注册 2006-11-21 03:33
19年会员
UID 71196
性别 男
状态 离线
比如我的计算机名是server,命令检测到不是server,则跳到另一段命令。如果是server则不跳到另一段命令。
2 发表于 2007-02-04 15:11 ·  新西兰 奥克兰大区 奥克兰 Microsoft
高级用户
★★
积分 783
发帖 268
注册 2006-12-26 17:18
19年会员
UID 74627
性别 男
状态 离线
if not "%computername%"=="server" goto 标签2
菩提本无树,明镜亦非台,本来无一物,何处惹尘埃.
3 发表于 2007-02-04 15:23 ·  中国 广东 广州 增城区 电信
初级用户
积分 74
发帖 34
注册 2006-11-21 03:33
19年会员
UID 71196
性别 男
状态 离线
能详细给个例子吗,我试过好象不行呀。
4 发表于 2007-02-04 15:32 ·  中国 广东 广州 增城区 电信
初级用户
积分 74
发帖 34
注册 2006-11-21 03:33
19年会员
UID 71196
性别 男
状态 离线
if not "%computername%"=="server" goto :st

:st
rd /s /q f: /如果是计算机机是server则执行这段,如果不是执行下面的,应该怎么写?

:st2
rd /s /a g:
5 发表于 2007-02-05 01:19 ·  中国 北京 中国科学院研究生院
银牌会员
★★★
积分 1,187
发帖 555
注册 2006-12-21 07:35
19年会员
UID 74129
性别 男
状态 离线
Originally posted by lotsunhim at 2007-2-4 02:32:
if not "%computername%"=="server" goto :st

:st
rd /s /q f: /如果是计算机机是server则执行这段,如果不是执行下面的,应该怎么写?

:st2
rd /s ...


你的这段代码好像是格式化??

这个例子不太好吧!!
6 发表于 2007-02-05 02:26 ·  中国 江苏 苏州 联通
初级用户
积分 25
发帖 11
注册 2007-01-23 10:33
19年会员
UID 77427
性别 男
状态 离线
也许是这样吧,

if "%COMPUTERNAME%" =="server" goto st2
:st
rd /s /q f: /如果是计算机名不是server,则执行这段
goto eof
:st2
rd /s /a g: /如果是计算机名是server,则执行这段
:eof

[ Last edited by shorterz on 2007-2-5 at 02:28 AM ]
It's never too late to learn.
7 发表于 2007-02-05 08:39 ·  中国 广东 广州 增城区 电信
初级用户
积分 74
发帖 34
注册 2006-11-21 03:33
19年会员
UID 71196
性别 男
状态 离线
Originally posted by scriptor at 2007-2-4 12:19 PM:


你的这段代码好像是格式化??

这个例子不太好吧!!


呵呵,我只是举例啊。

我现在去看下先。
8 发表于 2007-02-05 08:51 ·  中国 北京 中国科学院研究生院
银牌会员
★★★
积分 1,187
发帖 555
注册 2006-12-21 07:35
19年会员
UID 74129
性别 男
状态 离线
Originally posted by lotsunhim at 2007-2-4 19:39:


呵呵,我只是举例啊。

我现在去看下先。



rd /s 是删除目录及其子目录

/q 是安静模式

rd /s /q 是删除目录及其子目录,不需要确认。

rd /s /q f: 就是删除f: 根目录下一切不要确认。

所以是格式化的效果。

小心啊???!
9 发表于 2007-02-05 09:12 ·  中国 广东 广州 增城区 电信
初级用户
积分 74
发帖 34
注册 2006-11-21 03:33
19年会员
UID 71196
性别 男
状态 离线
所以我才要排除计算机名执行啊,不过执行起来计算机名分大小写的呢,那条件和当然计算机名不匹配就失效了。
10 发表于 2007-03-23 05:10 ·  中国 广东 东莞 电信
初级用户
积分 60
发帖 23
注册 2007-02-12 12:58
19年会员
UID 79310
性别 男
状态 离线
if "%COMPUTERNAME%" =="server" goto st2
引用上面..如果我有一个pc.txt计算机名列表...如果判断.如果列表中存在有A002或A019就执行st2 ?在线等...
11 发表于 2007-03-23 10:03 ·  中国 广东 东莞 电信
初级用户
积分 76
发帖 30
注册 2007-01-07 11:02
19年会员
UID 75718
性别 男
状态 离线
for /f %%i in ('findstr /I "a002 a019" E:\CESHI\1.txt') do goto st2
echo 没找到
pause
exit
:st2
echo 找到
pause

e:\ceshi\1.txt 是机名列表来的
1.txt内容为:
a002
a019
a001
a005
......
.....

[ Last edited by cy123 on 2007-3-22 at 09:05 PM ]
12 发表于 2007-06-09 07:32 ·  中国 广东 广州 增城区 电信
初级用户
积分 74
发帖 34
注册 2006-11-21 03:33
19年会员
UID 71196
性别 男
状态 离线
如果用vbs怎么写啊?
13 发表于 2007-06-11 02:23 ·  中国 广东 广州 增城区 电信
初级用户
积分 74
发帖 34
注册 2006-11-21 03:33
19年会员
UID 71196
性别 男
状态 离线
怎么没人理我啊。。。
14 发表于 2007-06-11 05:42 ·  中国 广东 广州 黄埔区 电信
中级用户
★★
积分 326
发帖 152
注册 2007-05-04 06:16
19年会员
UID 87412
性别 男
状态 离线
在同文件夹下建立 Computer.txt
@echo off
title by彬 QQ 43142691
set list=Computer.txt
find "%computername%" %list% && goto End
@echo 机器没有被列入排除列表中
pause
:End
@echo 机器被列入排除列表中
pause
15 发表于 2007-06-12 15:36 ·  中国 广东 广州 增城区 电信
初级用户
积分 74
发帖 34
注册 2006-11-21 03:33
19年会员
UID 71196
性别 男
状态 离线
Originally posted by qq43142691 at 2007-6-11 05:42 AM:
在同文件夹下建立 Computer.txt
@echo off
title by彬 QQ 43142691
set list=Computer.txt
find "%computername%" %list% && goto End
@echo 机器没有被列入排除列表 ...

那如果用vbs呢,怎么表示啊?
论坛跳转: