查看單個文章
舊 2005-08-17, 06:29 PM   #1
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設 cmd 命令指令碼-網路共享掛接 命令指令碼

功能:掛接網路中某主機(例如:192.168.1.99)的全部共享為網路驅動器
用法:cmd下執行mntshare /?
@echo off
echo.主機%1共享掛接中.........
del tmp.txt 2>nul

if "%1"=="" goto :syntax
if "%1"=="/?" goto :syntax
if "%1"=="/" goto :syntax
if "%1"=="?" goto :syntax
if "%1"=="/help" goto :syntax

setlocal ENABLEDELAYEDEXPANSION
for /f "delims=" %%i in ('net view \\%1 ^|more +7') do (
set n=%%i
set r_n=
for /l %%a in (1,1,40) do (
if "!n!"=="" set n=
set n1=!n:~0,1!
set n=!n:~1!
set r_n=!n1!!r_n!
)

set r_n=!r_n:*ksiD=!
echo !r_n!>>tmp.txt

)

for /f "tokens=*" %%j in (tmp.txt) do (
set m=%%j
set r_m=
for /l %%b in (1,1,40) do (
if "!m!"=="" net use * "\\%1\!r_m!" /persistent:yes 2>nul >nul
set m1=!m:~0,1!
set m=!m:~1!
set r_m=!m1!!r_m!
)
)

endlocal

cls
echo.
echo.掛接主機%1共享完成。
echo.
net use |more +5


pause
del tmp.txt 2>nul
explorer /e

:syntax
cls
echo.
echo.mntshare.cmd 掛接網路共享cmd指令碼
echo.
echo.written by hitme 2005.8.16
echo.===============================================
echo.用法:
echo. mntshare ip或者主機名
echo.
echo.例如:
echo. mntshare 192.168.1.99
echo. mntshare mycomputer
echo.
echo.移除掛接請使用 net use * /delete
echo.===============================================
pause


net view \\ip的輸出太過變態
共享名過長時列表錯行,共享名含空格又造成for抓取困難(字段間隔非跳格鍵,而是空格)
就是要搞翻它。。。
出個嗖招:利用了檔案類型Disk字段定位,把文本行翻過來,取代,倒回去。。
__________________
http://bbsimg.qianlong.com/upload/01/08/29/68/1082968_1136014649812.gif
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次