[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[网络工具] 批处理取得计算机的计算机名、MAC、IP

本来不敢献丑,看到有朋友发了一个查找本机的ip和mac,我也想发一个类似的程序。
这个程序的功能是将本机的mac、ip等信息以本机计算机名为文件名,发送到当前用户的桌面上。
我做这个程序的目的是,为了规范网络,已经让所有人把计算机名设为个人姓名,现在要收集mac,还想做到封装(不让无关的人接触这些内容),所以在网上把我这个程序发给每个人让他们运行一下,然后把生成的文件发给我。为了封装所有文件用tmp格式,其实用记事本打开就行。
每条命令都加了注解,运行时可以删去
  1. @echo off
  2. ::关闭显示
  3. hostname >%temp%\temp1.temp
  4. ::将hostname命令的执行结果存放到临时文件中
  5. for /f %%i in (%temp%\temp1.temp) do set p=%%i
  6. ::将临时文件中的hostname赋给变量P
  7. ipconfig /all >%temp%\temp2.temp
  8. ::将ipconfig/all的结果存入临时文件
  9. set r="c:%HOMEPATH%\桌面"
  10. ::设置存放位置当前用户的桌面
  11. if exist %r%\%p%.tmp del %r%\%p%.tmp
  12. ::删除桌面上已有的原来生成的结果文件
  13. type %temp%\temp2.temp>%r%\%p%.tmp
  14. ::将临时文件中的ipconfig信息存入以计算机名为名字的
  15. ::临时文件中并将此文件放在当前用户桌面上
  16. del %temp%\temp2.temp
  17. del %temp%\temp1.temp
  18. ::删除作废的临时文件
复制代码

  1. hostname >%temp%\temp1.temp
  2. ::将hostname命令的执行结果存放到临时文件中
  3. for /f %%i in (%temp%\temp1.temp) do set p=%%i
  4. ::将临时文件中的hostname赋给变量P
复制代码
可简化为
  1. for /f "delims=" %%i in ('hostname') do set p=%%i
复制代码

还有“set FONT-SIZE: 16pt; FONT-FAMILY: 华文楷体">桌面"”不太对吧。

[ 本帖最后由 yslyxqysl 于 2008-12-19 18:22 编辑 ]

TOP

回复 2楼 的帖子

??怎么变成set FONT-SIZE: 16pt; FONT-FAMILY: 华文楷体">桌面"”,可能是粘贴的时候出错了,我改过来
关于改进的代码,我还不知道in里可以加命令,学习了,这样果然好多了,谢谢

TOP

re:取得计算机的计算机名

在Server 08 上运行没有任何结果,只是弹出命令行窗口然后迅速关闭
printer-小祥

TOP

回复 4楼 的帖子

没有用过server08,可能是Server 08上面系统的当前用户的桌面路径和xp中不一样吧。

TOP

回复 4楼 的帖子

把@echo off删除
最后加一行pause
结果贴出来看看
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

厉害…………

TOP

可以把所有代码简化为:
@echo off
ipconfig/all >a.txt
pause

试过了,结果和LZ的一样..

TOP

可以把所有代码简化为:
@echo off
ipconfig/all >a.txt
pause

试过了,结果和LZ的一样..
hyq912 发表于 2012-5-2 11:40



这个不错

TOP

返回列表