Board logo

标题: 请教如何写BAT获取计算机名或IP地址 [打印本页]

作者: ncow     时间: 2006-3-16 15:37    标题: 请教如何写BAT获取计算机名或IP地址

我想运行一个BAT,能生成一个以运行此BAT的计算机的名字或IP地址命名的文本文件.请教如何实现.
此BAT共享在服务器上.
作者: Climbing     时间: 2006-3-17 09:08
ipconfig命令可以用来获得本机的IP地址。
net config workstation命令可以用来获得本机的计算机名。

剩下的工作就是将其中的相关数据提取到环境变量中用来生成相应的文件名,如何提取,方法多种多样,我想本论坛以前的帖子中已经提供了很多实例,自己努力一下找一找吧。
作者: ncow     时间: 2006-3-17 14:02
就请上面老大帮帮忙吧,给个完整的例子
我实在是找不到啊,搜索什么关键字好啊,"环境变量"……找不到啊
作者: 3742668     时间: 2006-3-17 14:13
echo %COMPUTERNAME%
你什么系统?
作者: ncow     时间: 2006-3-17 14:43
4楼朋友你好,谢谢你。
我还要把此计算机名来命名新建的文本文件啊,请问如何,系统98和XP都有的。

echo 正在使用中.... >> %computername% +"正在使用中.....txt"

我想得到一个[计算机名+“正在使用中.....”]这个名字的文本文件。
请教
作者: ncow     时间: 2006-3-17 15:30
原来这么写就可以得到我想要的。
set a=%computername%正在使用中.....txt
echo >> %a%

但在98系统里得不到%computername%,请问98的计算机名如何获取。
再:
if 系统是98
set a=98的计算机名正在使用中.....txt
if 系统是XP
set a=%computername%正在使用中.....txt
以上应该怎么写啊
作者: 3742668     时间: 2006-3-17 16:03
if /i %ComSpec% == C:\WINDOWS\system32\cmd.exe 就是98以上系统
if /i %ComSpec% == C:\WINDOWS\command.exe(具体路径是在system32下还是在windows目录下我忘记了,你自己看看吧)  就是98系统
其实只要一句就可以了
具体写发略。
另:如果你只是建立一个文件名而里面不需要别的内容的话可以省略到后缀,如:
echo > %computername%正在使用中
判断操作系统的方法其实很多,你也可以通过别的方法来判断,比如
if /i %os% == Windows_NT
你可以把你写的帖上来,然后大家帮你优化优化。。
作者: Climbing     时间: 2006-3-17 16:08
楼上这位回答的已经很全面了。