作者: 口o口 時間: 2022-4-19 16:36 標題: Batch Script 救教
本帖最後由 口o口 於 2022-4-19 16:38 編輯
前日開始整左個小工具俾自己用....
但有一個問題都係解決唔到....
我整左個 net view 完後自己再 >> net user logon.bat
但係 Drive : \\ 我只用 * 暫時代替....因為我寫左個 set 出 a-z
但佢每次個結果都係每個 資料夾 都會自己由 a:\\ jum到 z:\\ 先會停
有冇方法可以係個結個度自己判斷到幾多個資料夾同自己加A-Z加到冇資料夾就停?
定係要 >> net view.txt....再係 net view.txt 複製某行去 logon.bat度?
寫左 Batch Script 3日....真係唔識
作者: fred2088 時間: 2022-4-21 12:12
回復 1 #口o口
想次次開機自己reconnect?
via HKEPC Reader for Android
作者: 口o口 時間: 2022-4-21 15:57
本帖最後由 口o口 於 2022-4-21 16:00 編輯
唔係....想輸出果陣....指定 Z-A 排列 drive_letter ....
但係我整黎整去都唔成功...
比如 我有 A / B / C 3個SHARE FOLDER
我我整黎整去都變左下面咁...我唔太會寫CODE
但我只想LIST係 Z \\IP\A @ X \\IP\B @ Y:\\IP\C
z \\IP\A
y \\IP\A
x \\IP\A
w \\IP\A
v \\IP\A
u \\IP\A
t \\IP\A
s \\IP\A
r \\IP\A
q \\IP\A
p \\IP\A
o \\IP\A
n \\IP\A
m \\IP\A
l \\IP\A
k \\IP\A
j \\IP\A
i \\IP\A
h \\IP\A
g \\IP\A
f \\IP\A
e \\IP\A
d \\IP\A
c \\IP\A
b \\IP\A
a \\IP\A
z \\IP\B
y \\IP\B
x \\IP\B
w \\IP\B
v \\IP\B
u \\IP\B
t \\IP\B
s \\IP\B
r \\IP\B
q \\IP\B
p \\IP\B
o \\IP\B
n \\IP\B
m \\IP\B
l \\IP\B
k \\IP\B
j \\IP\B
i \\IP\B
h \\IP\B
g \\IP\B
f \\IP\B
e \\IP\B
d \\IP\B
c \\IP\B
b \\IP\B
a \\IP\B
z \\IP\C
y \\IP\C
x \\IP\C
w \\IP\C
v \\IP\C
u \\IP\C
t \\IP\C
s \\IP\C
r \\IP\C
q \\IP\C
p \\IP\C
o \\IP\C
n \\IP\C
m \\IP\C
l \\IP\C
k \\IP\C
j \\IP\C
i \\IP\C
h \\IP\C
g \\IP\C
f \\IP\C
e \\IP\C
d \\IP\C
c \\IP\C
b \\IP\C
a \\IP\C
作者: fred2088 時間: 2022-4-21 22:12
net use ?
作者: 口o口 時間: 2022-4-21 22:13
YA...
作者: benny0913 時間: 2022-4-21 23:57
不如你 show 下你個 script 點寫
再幫你改 la~ ^^"
作者: impotence 時間: 2022-4-22 11:56
example :
net use z: \\xxx.xxx.xxx.xxx\FolderName /user:username password
作者: 口o口 時間: 2022-4-22 16:20
:drive_letter 我暫時用左 *
但有冇計輸出果陣係每個 SHARE係 Z:\\ X:\\ Y:\\ ???
net_view
set ip=
set login_id=
set login_password=
set /p ip=. 請輸入IP地址:
set /p login_id=. 請輸入帳號:
set /p login_password=. 請輸入密碼:
set cmd_path=net use
set drive_letter=*
set user_id=user:%login_id%
set user_password=%login_password%
cls
echo.
echo.
echo =================================================================
echo.
for /f "skip=7" %%i in ('net view %ip% ^|findstr /v "命令已經成功完成。"') do echo %cmd_path% %drive_letter% \\%ip%\%%i /%user_id% %user_password%
echo.
echo =================================================================
echo.&echo.
echo 1.匯出檔案
echo 2.返回目錄
echo 3.退出
echo.
echo.
echo.
set /p num=. 請輸入數字:
if %num%==1 goto net_view_print
if %num%==2 goto main
if %num%==3 exit exit
pause>null
goto :main
:net_view
:net_view_print
cls
del /f logon_script.bat
for /f "skip=7" %%i in ('net view %ip% ^|findstr /v "命令已經成功完成。"') do (echo %cmd_path% %drive_letter% \\%ip%\%%i /%user_id% %user_password%) >>logon_script.bat
echo.
echo.
echo.
echo *****************************************************************
echo * *
echo * 導出完成 *
echo * *
echo *****************************************************************
echo.
echo.
echo.
echo 按下任意鍵返回主選單
echo.
echo.
echo.
pause>nul
cls
goto main
:net_view_print
作者: 電腦盲用戶 時間: 2022-4-23 02:57
睇下睇下終於估到樓主係想點。
樓主係咪想倒序咁Map Drive,先用 Z, 再用Y?
咁放 drive letter 落 array 應該可以喎。
改下佢放在樓主 batch 度取代左 set drive_letter=*
set arr[0]=Z
set arr[1]=Y
set arr[2]=X
set arr[3]=W
set arr[4]=V
set arr[5]=U
setlocal enableDelayedExpansion
FOR /L %%G IN (0,1,5) DO echo arr[%%G] == !arr[%%G]!
pause
作者: kamcm 時間: 2022-4-23 06:41
點解係把簡單野搞到咁複雜, 呢D野直接Hard Code 好過
因為你唔會想用開的S drive,
因為在Net view 階段 Detect 少左部機而變左T Drive.
用Net view 去 loop 完再自動Assign Drive Letter 做 SMB Mapping, 睇落好似好有趣..
但當中如果有Client 機係Offline 左... Net view 就會顯示唔到佢... 而令Mapping Drive Letter 順序出現變動...
又或者你加多左個Network Drive, Net view 都會出現變動..最後Mapping Drive Letter 又跟住變

作者: 口o口 時間: 2022-4-23 08:56
其實用 * 都冇咩問題...
係想整個工具方便下同睇下做唔做到-0-...
不過如果好1似你咁講...其實用 * 好似重好

