XCOPY只拷貝當(dāng)天文件的實(shí)現(xiàn)代碼
更新時(shí)間:2014年04月12日 23:45:57 作者:
最近由于需要備份一些文件,一般只需要備份當(dāng)前的文件就可以了,聽過xcopy支持這個(gè)方法,代碼也比較簡單特分享下,方便需要的朋友
最近由于MESIS數(shù)據(jù)庫自動(dòng)站資料的事,需要從CMACAST廣播目錄L1下將本省的區(qū)域自動(dòng)站數(shù)據(jù)文件拷貝出來用于入庫。在實(shí)際操作中碰到幾個(gè)問題,特此做備忘錄,以便以后查找。
問題1:MICDB指定的源目錄只要有文件就處理,進(jìn)庫程序本省很耗資源,用PC機(jī)處理要講究效率,最好每次只放入最新文件,以減少重復(fù)處理的情況。
問題2:CMACAST廣播目錄L1文件太多,3天有49萬多個(gè)文件,光打開目錄就要讀N分鐘,國家局信息中心技術(shù)人員都是吃糞的。本來用SceondCopy進(jìn)行拷貝功能很強(qiáng)大,可以實(shí)現(xiàn)只拷貝最新文件,但是對(duì)這個(gè)目錄文件數(shù)太多,最后實(shí)現(xiàn)不了。(NewZFile從SJK拷貝可以用SecondCopy)
為解決以上2個(gè)問題,利用XCOPY先將L1目錄的本省自動(dòng)站文件拷貝出來的,放在D:\AWS\ZFILE里(計(jì)劃任務(wù)實(shí)現(xiàn)),再用SCONDCOPY將D:\AWS\ZFILE里的最新文件拷到D:\Program Files\Micdb\tempdata\zfile里供MICDB進(jìn)庫時(shí)讀取。
XCOPY使用了 /D:mm-dd-yyyy參數(shù),即只拷貝指定日期之后的文件,那當(dāng)天日期如何生成的呢,使用了%date% 取得系統(tǒng)日期,如果是一般的中文XP系統(tǒng),日期格式是YYYY-MM-DD,所以就用截取字符串的方式重造了美國日期格式。如:%date:~0,4% 表示截取從第0位開始截取長度4個(gè)字符從而得到Y(jié)YYY(年),如:%date:~5,5% 表示截取從第5位開始截取長度5個(gè)字符從而得到MM-DD(月-日)
為了方便用戶與自己瀏覽腳本之家特將內(nèi)容整理了下,方便大家學(xué)習(xí)
dos中獲取系統(tǒng)時(shí)間的命令
echo %date%
輸出:

讀取系統(tǒng)日期后截取其中的4位年變量(中國日期格式 年-月-日)
set nian=%date:~0,4$
測(cè)試
echo %date:~0,4%
輸出:

echo %date:~5,2%
echo %date:~8,2%
輸出:
xcopy \\172.22.68.4\sjk\zp\*.* e:\test /d:%yue%-%ri%-%nian%
問題1:MICDB指定的源目錄只要有文件就處理,進(jìn)庫程序本省很耗資源,用PC機(jī)處理要講究效率,最好每次只放入最新文件,以減少重復(fù)處理的情況。
問題2:CMACAST廣播目錄L1文件太多,3天有49萬多個(gè)文件,光打開目錄就要讀N分鐘,國家局信息中心技術(shù)人員都是吃糞的。本來用SceondCopy進(jìn)行拷貝功能很強(qiáng)大,可以實(shí)現(xiàn)只拷貝最新文件,但是對(duì)這個(gè)目錄文件數(shù)太多,最后實(shí)現(xiàn)不了。(NewZFile從SJK拷貝可以用SecondCopy)
為解決以上2個(gè)問題,利用XCOPY先將L1目錄的本省自動(dòng)站文件拷貝出來的,放在D:\AWS\ZFILE里(計(jì)劃任務(wù)實(shí)現(xiàn)),再用SCONDCOPY將D:\AWS\ZFILE里的最新文件拷到D:\Program Files\Micdb\tempdata\zfile里供MICDB進(jìn)庫時(shí)讀取。
XCOPY使用了 /D:mm-dd-yyyy參數(shù),即只拷貝指定日期之后的文件,那當(dāng)天日期如何生成的呢,使用了%date% 取得系統(tǒng)日期,如果是一般的中文XP系統(tǒng),日期格式是YYYY-MM-DD,所以就用截取字符串的方式重造了美國日期格式。如:%date:~0,4% 表示截取從第0位開始截取長度4個(gè)字符從而得到Y(jié)YYY(年),如:%date:~5,5% 表示截取從第5位開始截取長度5個(gè)字符從而得到MM-DD(月-日)
為了方便用戶與自己瀏覽腳本之家特將內(nèi)容整理了下,方便大家學(xué)習(xí)
dos中獲取系統(tǒng)時(shí)間的命令
復(fù)制代碼 代碼如下:
echo %date%
輸出:

讀取系統(tǒng)日期后截取其中的4位年變量(中國日期格式 年-月-日)
set nian=%date:~0,4$
測(cè)試
復(fù)制代碼 代碼如下:
echo %date:~0,4%
輸出:

讀取系統(tǒng)日期后截取其中的2位月變量
set yue=%date:~5,2%
測(cè)試:
復(fù)制代碼 代碼如下:
echo %date:~5,2%
輸出:
讀取系統(tǒng)日期后截取其中的2位日變量
set ri=%date:~8,2%
測(cè)試:
復(fù)制代碼 代碼如下:
echo %date:~8,2%
輸出:

重塑美國日期變量格式 “月-日-年”,只選擇拷貝當(dāng)前日期的文件
復(fù)制代碼 代碼如下:
xcopy \\172.22.68.4\sjk\zp\*.* e:\test /d:%yue%-%ri%-%nian%
相關(guān)文章
cmd dir結(jié)構(gòu)樹顯示代碼(列出目錄文件)
這篇文章主要是用dir命令的使用,在當(dāng)前目錄生成很漂亮的結(jié)構(gòu)樹,象DIR命令一樣,不過每個(gè)下級(jí)目錄文件也列出2012-09-09在Windows下定時(shí)執(zhí)行bat腳本的實(shí)現(xiàn)方法
在Windows操作系統(tǒng)中,定時(shí)執(zhí)行bat腳本是一項(xiàng)非常有用的技術(shù),本文將介紹如何在Windows下實(shí)現(xiàn)定時(shí)執(zhí)行bat腳本的方法,并提供了詳細(xì)的示例,本文內(nèi)容詳實(shí),包含了必要的代碼示例和操作步驟,旨在幫助讀者快速上手并解決實(shí)際問題,感興趣的朋友可以參考下2024-01-01實(shí)現(xiàn)百度關(guān)鍵字搜索的批處理
實(shí)現(xiàn)百度關(guān)鍵字搜索的批處理...2007-08-08