iT邦幫忙

1

請問一下,如何用批次檔來判定電腦是PC或NB,再去執行不同指令,謝謝

大家好,請問一下,如果是要寫一個批次檔修改電腦名稱,
因為公司內有PC也有NB,所以需要多一個判斷電腦是PC或NB,
再去執行修改PC或NB開頭的電腦名稱,不知道該如何判斷,謝謝

echochio iT邦高手 1 級 ‧ 2019-10-21 17:18:04 檢舉
看您如何判斷 ...
1. 由 CPU判斷
2. 有無線網卡
大概就想到這兩個方向了
chsinzk iT邦研究生 2 級 ‧ 2019-10-21 17:45:01 檢舉
判斷有沒有電池....
wmic systemenclosure get ChassisTypes
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

3
蟹老闆
iT邦大師 1 級 ‧ 2019-10-22 00:29:18
最佳解答

請參考

@Echo Off
For /f "Skip=1 Tokens=2 Delims==" %%i In ('wmic path Win32_ComputerSystem Get PCSystemType /Format:List') Do Goto %%i
:0
Echo 此電腦未指定類型
Goto :Exit
:1
Echo 此電腦是桌上型電腦
Goto :Exit
:2
Echo 此電腦是移動裝置 <-筆電
Goto :Exit
:3
Echo 此電腦是工作站
Goto :Exit
:4
Echo 此電腦企業伺服器
Goto :Exit
:5
Echo 此電腦是小型伺服器
Goto :Exit
:6
Echo 此電腦是機台電腦
Goto :Exit
:7
Echo 此電腦是效能伺服器
Goto :Exit
:8
Echo 最大列舉值(這啥?(平板?))
:Exit
Pause

也可以結合這個使用

看更多先前的回應...收起先前的回應...
samuel24 iT邦新手 5 級 ‧ 2019-10-22 07:23:09 檢舉

請問在linux下有類似的用於判斷機器屬性的指令嗎?

原來可以這樣玩 感謝蟹老闆

sanithome iT邦新手 2 級 ‧ 2019-10-23 00:42:31 檢舉

太感謝了~

請教大師,若要把LAN或WLAN的MAC後四碼,當電腦名稱後四碼
要怎麼判斷會比較好呢,謝謝

蟹老闆 iT邦大師 1 級 ‧ 2019-10-23 02:22:03 檢舉

samuel24抱歉,Linux指令不是很了解.
竹本立里WMIC裡還有很多軟硬體及網路及應用程式等相關功能,我也還沒理解完全
sanithome若是要結合所提供的連結不建議這麼做,因為那個批次檔僅抓取第一個抓到的mac,無法得知抓到的是WAN或LAN,若不考慮此項可以在適當位置加入

Set Mac=!Mac:-=!
Echo %Mac:~-12,4%

實際運用的請去除ECHO

sanithome iT邦新手 2 級 ‧ 2019-10-23 13:32:47 檢舉

您好~請問這幾行是要加在上述的批次內嗎,還是 這個批次
另外請問,不知道WMIC能不能抓到目前有設定GATEWAY網卡的MAC,這樣可能也是一個要抓哪張網卡MAC的依據,謝謝

蟹老闆 iT邦大師 1 級 ‧ 2019-10-24 03:03:41 檢舉

sanithome那二行是與推薦連結配合的,Gteway 還是有可能有二個或二個以上,您的環境應該是可以依您的方式來判斷,這樣的話就無法與推薦連結結合使用,必須自己打造一個。
有設匣道取得該網卡MAC方式

for /f "tokens=2  delims=} skip=1 " %%i in ('wmic nicconfig where "IPEnabled=true" get macaddress^,defaultipgateway') do echo %%i

建議您提問時一次性將所需結果說明清楚,因為部份人對這種提問方式是反感的。

我要發表回答

立即登入回答