DOS批處理獲取系統資訊與U盤使用記錄並上傳資料

2021-10-03 23:34:13 字數 3904 閱讀 7757

分享乙個我結合網上各種資料寫的批處理,它能夠獲取電腦的s/n碼、硬碟s/n碼、補丁資訊、網路資訊、mac位址、u盤使用記錄(u盤型號序列號),根據需要還有上傳資料到共享資料夾的功能。

@echo off

:: 關閉回顯

title kotori_poi

color 0a

:: 開啟字型變綠

echo 計算機s/n碼: > %~dp0systemcheck.txt

wmic bios get serialnumber | find /v "serialnumber" >> "%~dp0systemcheck.txt"

:: 獲取電腦s/n碼

echo 計算機硬碟s/n碼: >> %~dp0systemcheck.txt

wmic path win32_physicalmedia get serialnumber | find /v "serialnumber" >> "%~dp0systemcheck.txt"

:: 獲取硬碟s/n碼

for/f "tokens=1-2,4-5"

%%i in (

'echo list disk ^| diskpart ^| findstr /i gb')do

(echo

%%i %

%j 容量:%

%k %

%l >> %~dp0systemcheck.txt

)::獲取硬碟大小

systeminfo >> %~dp0systemcheck.txt

:: 獲取系統資訊(安裝的補丁)

getmac /v >> %~dp0systemcheck.txt

netstat -an >> %~dp0systemcheck.txt

:: 獲取網路資訊、mac位址

reg query hklm\system\currentcontrolset\enum\usbstor /s >%~dp0usbusagerecord.txt

:: 獲取u盤登錄檔記錄

(echo

-------------------

echo \ u盤使用記錄: \

echo

-------------------

) >> %~dp0systemcheck.txt

:: 以下操作都是篩選u盤序列號

( findstr /c:"&0\device parameters\partmgr"

%~dp0usbusagerecord.txt) > %~dp0usbusagerecord1.txt

@echo off&setlocal enabledelayedexpansion

:: 定義變數延遲環境,關閉回顯

:: 讀取usb1.txt所有內容

for/f "eol=* tokens=*"

%%i in (

%~dp0usbusagerecord1.txt)do(

:: 設定變數a為每行內容

set a=%

%i:: 如果該行有hkey_local_machine\system\currentcontrolset\enum\usbstor\disk&ven_,則將其改為型號:

set"a=!a:hkey_local_machine\system\currentcontrolset\enum\usbstor\disk&ven_= 型號:!"

:: 如果該行有&0\device parameters\partmgr,則將其改為 空格

set"a=!a:&0\device parameters\partmgr= !"

:: 如果該行有\,則將其改為 序列號:

set"a=!a:\= 序列號:!"

:: 如果該行有&rev_pmap,則將其改為 空格

set"a=!a:&rev_pmap= !"

:: 如果該行有&rev_1.00,則將其改為 空格

set"a=!a:&rev_1.00= !"

:: 如果該行有&rev_2.00,則將其改為 空格

set"a=!a:&rev_2.00= !"

:: 如果該行有&rev_3.00,則將其改為 空格

set"a=!a:&rev_3.00= !"

:: 如果該行有&rev_,則將其改為 空格

set"a=!a:&rev_= !"

:: 把修改後的全部行存入%~dp0systemcheck.txt

echo

!a!>>%~dp0systemcheck.txt )

del%~dp0usbusagerecord.txt

del%~dp0usbusagerecord1.txt

start notepad "%~dp0systemcheck.txt"

echo 結果在本程式所在目錄--》systemcheck.txt

pause

結果報告需要自動靜默上傳你的共享伺服器的,在最後加上下面這行**。

注:上傳的txt檔名是執行批處理主機的sn碼(主機的序列號)。

net use  \\你的伺服器ip\共享資料夾 " "

/user:"anonymous"

@echo off

setlocal enabledelayedexpansion

for/f "delims="

%%a in (

%~dp0systemcheck.txt)do(

set/a n+=1

if!n!==2 set a=%%a)

::將sn碼存入變數

for%

%a in (

%a%)do(

copy

/y %~dp0systemcheck.txt \\你的伺服器ip\共享資料夾\%

%a.txt)

公升級版,結果報告需要彈出視窗,然後選擇上傳你的共享伺服器的,把上面的**換成下面的**。

注:上傳的txt檔名是執行批處理主機的sn碼(主機的序列號)。

set b=

echo wsh.

echo msgbox(

"是否上傳結果到bgs?選是上傳,選否不上傳並退出 "

,vbyesno,

"kotori_poi"

) >tmp.vbs

for/f %

%a in (

'cscript tmp.vbs //nologo //e:vbscript')do

set"b=%%a"

if%b%==6 goto yes

if%b%==7 goto end

del/q tmp.vbs

exit

:yes

net use \\你的伺服器ip\共享資料夾 " "

/user:"anonymous"

@echo off

setlocal enabledelayedexpansion

for/f "delims="

%%a in (

%~dp0systemcheck.txt)do(

set/a n+=1

if!n!==2 set a=%%a)

::將sn碼存入變數

for%

%a in (

%a%)do(

copy

/y %~dp0systemcheck.txt \\你的伺服器ip\共享資料夾\%

%a.txt)

del/q tmp.vbs

goto end

:end

del/q tmp.vbs

exit

食用方法:

在桌面上新建乙個txt文字,選擇複製**進去,儲存退出,然後改檔案字尾為bat,右鍵–》以管理員身份執行。

然後在當前目錄檢視結果。

U盤防毒 批處理

u盤防毒批處理加強版 echo off 轉換分割槽格式為ntfs convert cd 0,2 fs ntfs 建立資料夾 ifnot exist autorun inf mdautorun inf 建立無法刪除的資料夾 mdautorun inf tomtaw 複製檔案,防止資料夾被刪除 echo...

U盤系列 之U盤掛載資訊的獲取

程式內讀取 etc mtab或者 proc mounts,解析字串較為繁瑣,可以使用mntent提供的方便函式 file setmntent const char filename,const char type struct mntent getmntent file filep int endm...

C 獲取U盤ID序列號及U盤資訊

2011 05 20 上傳大小 35kb c vs2005 u盤id u盤資訊 獲取u盤id序列號 vs2005編譯通過,原始碼源自csdn。已經測試好用。可以獲得u盤名稱,製造商id號 版本號 u盤序列號及容量 form1.cs using system using system.collecti...