部分Windows批處理指令碼整理
在工作中有時候在Windows平臺需要使用到批處理指令碼進行一些定期的任務,來達到與UNIX平臺SHELL指令碼的功能,下面整理了幾個工作中用到的指令碼。
收集Java程式記憶體的記憶體使用情況
set nowtime=%date:~0,10% %time%
@echo %nowtime% >>D:\scripts\java_memo_mon.txt
tasklist |findstr java >>D:\scripts\java_memo_mon.txt
ping 123.45.67.89 -n 1 -w 1200000
@echo ------------------------------ >>D:\scripts\java_memo_mon.txt
使用tasklist命令可以檢視所有windows程式的記憶體使用情況及程式號,findstr有類似於UNIX平臺上grep的功能
只是windows平臺上沒有sleep類似的命令,因此只能取巧使用ping 123.45.67.89 -n 1 -w 1200000這個命令.
ping一個無效的IP地址
-w引數意思為等待每次回覆的超時時間,單位為毫秒
-n引數指要傳送的回顯請求數
ping 123.45.67.89 -n 1 -w 1200000 計算下來即等於等待20分鐘
******************************
刪除歷史檔案(此示例中為刪除380天以前的*.rar檔案)
set nowtime=%date:~0,10% %time%
@echo %nowtime% >>D:\backup\scripts\SQL_DATA_backup_del.log
forfiles /p D:\backup\SQL_DATA /s /m "*.rar" /d -380 >>D:\backup\scripts\SQL_DATA_backup_del.log
forfiles /p D:\backup\SQL_DATA /s /m "*.rar" /d -380 /c "cmd /c del @path"
@echo -------------------------------------------------- >>D:\backup\scripts\SQL_DATA_backup_del.log
使用forfiles命令,是Windows中類似UNIX/Linux中的find命令
/p引數指搜尋的路徑,本例中查詢D:\backup\SQL_DATA目錄
/s引數指遞迴,遞迴到每個子目錄
/m引數匹配搜尋的條件,預設為全部匹配即"*",示例中為"*.rar"
/d引數指檔案的上次修改時間,可以選擇具體日期前後(+/-)修改的檔案;也可以選擇當前時間減"dd"天。示例中意思為在380天前修改的檔案
/c引數後面指執行什麼樣的命令,示例中執行刪除命令
******************************
備份SQLServer資料庫的指令碼,採用了for迴圈,核心的是使用sqlserver中的osql命令
rem @echo off
set svr=sqldb
set svrrole=bozch
set nowtime=%date:~0,10% %time%
set year=%date:~0,4%
set month=%date:~5,2%
set day=%date:~8,2%
set today=%year%-%month%-%day%
if "%time:~0,1%" == " " (set nowh=%time:~1,1%) else (set nowh=%time:~0,2%)
set rar="d:\Program Files\WinRAR\winRar.exe"
set rarlist="d:\backup\scripts\rarlst.txt"
set ftplist="d:\backup\scripts\ftplst.txt"
set baklog=d:\backup\scripts\tkblbackup.log
@echo. >> %baklog%
@echo -------------------------------------------------- >> %baklog%
@echo %nowtime% BackupScript is starting....... >> %baklog%
::資料庫備份語句,可新增多個資料庫
for %%a in (AVASOL AVA_EBS XM) do (
@echo %nowtime% BackupDB %%a is beginning....... >> %baklog%
@osql -s localhost -U sa -P circ0620 -Q "backup database %%a to disk='D:\backup\SQL_DATA\%%a_%svr%_%today%.bak' with init" >> %baklog%
@echo. >>%baklog%
::Rar files
%rar% a -as -r -ep1 -ibck -df d:\backup\SQL_DATA\%%a_%svr%_%today%.bak.rar d:\backup\SQL_DATA\%%a_%svr%_%today%.bak >> %baklog%
)
:: cd /d d:\backup\SQL_DATA
:: del *.bak
::echo. > %rarlist%
@echo -------------------------------------------------- >> %baklog%
@echo. >> %baklog%
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/23850820/viewspace-1087776/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- windows 批處理備份目錄指令碼Windows指令碼
- bat批處理常用指令碼BAT指令碼
- BAT 批處理指令碼 教程BAT指令碼
- 使用批處理指令碼或SHELL配合SQL指令碼指令碼SQL
- 編寫簡單的windows bat批處理指令碼檔案WindowsBAT指令碼
- Windows批處理命令Windows
- Windows批處理學習(二)——批處理(3)薦Windows
- windows批處理之一:字串處理Windows字串
- Windows批處理檔案Windows
- 批處理指令碼來修復並開啟Windows 7中的Windows Defender防火牆指令碼Windows防火牆
- Windows批處理命令專題Windows
- windows sql loader批處理WindowsSQL
- Windows登錄檔中修改UAC(使用者賬號控制)及批處理指令碼Windows指令碼
- Windows邏輯備份-EXPDP(保留5天內邏輯備份)批處理指令碼Windows指令碼
- 將DOS批處理檔案轉換為Shell指令碼指令碼
- 開啟windows批處理大門Windows
- windows批處理之三:for迴圈Windows
- rem 新建分類整理資料夾的批處理指令碼 2024年6月12日REM指令碼
- windowns下如何實現批處理實現呼叫sql指令碼SQL指令碼
- 07 Windows批處理之檔案操作Windows
- Windows Ping的結果顯示每次ping的時間的bat批處理指令碼WindowsBAT指令碼
- 寫個批處理指令碼來幫忙幹活---遍歷資料夾&字串處理指令碼字串
- 批處理實現的ip地址切換的複雜指令碼指令碼
- 指令碼+批處理打造IIS監控器『羅斌原創』薦指令碼
- 批處理 壓縮zip 並過濾部分檔案
- Windows10系統優化(批處理)Windows優化
- windows刪除檔案的批處理操作Windows
- 在linux中生成windows的批處理LinuxWindows
- windows批處理之二:基礎知識Windows
- windows cmt bat批處理中的註釋WindowsBAT
- Windows批處理中的變數和值Windows變數
- 批處理框架框架
- JDBC 批處理JDBC
- 碎片批處理
- 批處理命令
- 批處理概述
- 修改windows遠端桌面連線埠-批處理Windows
- Windows 批處理之DATE命令的使用方法Windows