bat自動打包壓縮實現

2022-02-23 21:52:19 字數 2935 閱讀 8778

1.引言

2.實現介紹

1)獲取svn號,生成批處理檔案

寫乙個pak.bat檔案寫入下列內容,第一句是呼叫subwcrev.exe檔案傳入引數生成pack.tmp.bat檔案,第二句是呼叫生成的pack.tmp.bat檔案;第三句是刪除生成的檔案;

"../../tools/subwcrev.exe" ../../ pack.bat.t pack.tmp.bat -f

call pack.tmp.bat

del pack.tmp.bat

pause

2pack.bat.t檔案模板

@rem win2000下測試通過

@rem 獲取當前時間

@echo off

rem 系統不一樣,日期格式有差別

for /f "tokens=1-10 delims=- " %%a in ('date /t') do set date=ams_v1.11.0_svn$wcrev$_%%a%%b%%c_s

@xcopy /e /y /i /exclude:uncopy.txt .\*.*  ..\ams

"c:\program files\winrar\winrar.exe" a -df -ibck ..\%date%.zip ..\ams

pause

3pack.tmp.bat真正的打包批處理檔案

可以發現執行pack.bat檔案,將檔案pack.bat.t傳入subwcrev.exe後生成的pack.tmp.bat與pack.bat.t不同的地方就是檔案的$wcrev$引數變成了svn號360515,這其實是用工具subwcrev.exe獲取程式的svn編號;在生成新的打包批處理檔案;@標記的行都是備註;for /f 語句是bat的語句,用批處理in後面的資料或者字串,tokens指定獲取的資料個數,delims用來分割資料的分隔符,'date /t'表示系統時間,set設定變數;這句話的意思是獲取系統時間,將a,b,c標記的年、月、日輸入到變數date中,生成壓縮包的名稱;xcopy語句是複製原路徑下檔案,到目標資料夾ams下,..\表示當前目錄的上一級目錄;引數/e表示複製目錄和子目錄,包括空資料夾;/y引數表示如果目標目錄有該檔案則直接覆蓋;/i表示如果目標資料夾不存在,又在複製乙個以上的檔案,則自動建立新的資料夾ams;/exclude:uncopy.txt表示排查的檔案型別,在uncopy.txt中寫明不複製的檔名稱或者字尾名;.\*.*指定當前目錄的所有檔案;..\ams表示目標資料夾;下面一句則是呼叫壓縮程式winrar,需要系統安裝了壓縮程式,將安裝路徑用字串寫在開頭,a表示新增檔案,-df表示壓縮成功後刪除原有檔案,如果要保留原始檔則不加這個引數;-ibck表示在後台執行,不顯示壓縮介面和進度;後面的引數是壓縮檔案包的名稱,用前面生成的字串變數date來命名;在後面是要被壓縮的資料夾..\ams;

@rem win2000下測試通過

@rem 獲取當前時間

@echo off

rem 系統不一樣,日期格式有差別

for /f "tokens=1-10 delims=- " %%a in ('date /t') do set date=ams_v1.11.0_svn360515_%%a%%b%%c_s

@xcopy /e /y /i /exclude:uncopy.txt .\*.*  ..\ams

"c:\program files\winrar\winrar.exe" a -df -ibck ..\%date%.zip ..\ams

pause

4uncopy.txt檔案的內容

svn.lib

.exp

.obj

.log

.db.ilk

3.總結

綜上所述,需要檔案pak.bat、pack.bat.t、uncopy.txt、subwcrev.exe四個檔案,執行pak.bat檔案,pak.bat檔案將檔案pack.bat.t傳入subwcrev.exe後生成的pack.tmp.bat,獲取到svn號,再執行pack.tmp.bat檔案,先獲取到時間,和svn號一起組成壓縮包的名稱,然後複製檔案到資料夾ams,再將ams壓縮成指定名稱的壓縮包;最後再刪除掉複製過程中生成的中間資料夾ams;就是這樣乙個過程;如果只是簡單的複製檔案;則直接使用pack.tmp.bat檔案和uncopy.txt,按照自己的需求修改,執行即可;檔案中的路徑根據具體的路徑去設定相對路徑;最好是放在同乙個資料夾下;

(1)   **監測。監測**實時變化,可以監測**大單交易、急速拉公升和下降、主力入場和出場、**最高點和最低點提醒。檢測到最高點、最低點、主力進場點、主力退場點、急速拉公升點、急速**點,給出語音或者聲音提醒,不用再時刻看著**了,給你更多自由的時間;

(2)   **監測。監測**的走勢,採用上證、深證、創業三大指數的綜合指數作為**走勢。並實時監測**的最高點和最低點、中間的轉折點。

(3)   **推薦。還能根據歷史資料長期或短期走勢進行分析,對**3千多**票進行分析對比,選出漲勢良好的**,按照增長速度從大到小排序,推薦給你漲勢良好的**;

bat命令學習鏈結

xcopy詳細學習鏈結

bat中rar命令引數詳解

日誌打包壓縮

這幾天,伺服器日誌漲的很快。因為沒有日誌伺服器,都是寫在本地。要保留三個月,打包,壓縮能節省些空間。做個記錄。顯示當前系統前兩個的日期 date d 2 days ago y m d bin sh 會員服務的日誌 路徑 opt logs member ma logs 保留三天的日誌。打包壓縮存在當前...

檔案壓縮打包

1.gzip 1 gzip gzip 檔案 生成.gz檔案 2 gzip 6 預設級別 3 gzip d 壓縮檔案 解壓縮 4 gunzip 壓縮檔案 解壓縮 5 zcat 壓縮檔案 檢視壓縮檔案內容 2.bzip2 1 bzip2 檔案 生成.bz2檔案 2 bzip2 9 預設級別 3 bzip...

打包與壓縮

1.gzip壓縮 gzip a.txt 2.解壓 gunzip a.txt.gz gzip d a.txt.gz 3.bzip2壓縮 bzip2 a 4.解壓 bunzip2 a.bz2 bzip2 d a.bz2 5.將當前目錄的檔案打包 tar cvf bak.tar 將 etc passwor...