最近在項目上需要把文件定時備份,用BAT文件來自動生成文件夾名,精確到秒:
bat腳本時間設(shè)定如下:
pushd E:\Test set T=%date:~0,10%-%time:~0,2%%time:~3,2%%time:~6,2% md %T% popd
time變量值如下的各個操作的意義如下:
%time:~0,2% 表示從左向右指針向右偏0位,然后從指針偏移到的位置開始提取2位字符,結(jié)果是小時字段數(shù)值
%time:~3,2% 表示指針從左向右偏移3位,然后從偏移處開始提取2位字符,結(jié)果是分鐘字段數(shù)值
%time:~6,2% 表示指針從左向右偏移6位,然后從偏移處開始提取2位字符,結(jié)果是秒字段數(shù)值
用%time:~0,2%%time:~3,2%%time:~6,2%時有個問題, 就是如果TIME 是08點(diǎn)的時候,電腦顯示的是08,但是實際上用%time:~0,2%抓取的時候就會有問題,因為實際上抓到到時空格+8,這樣在用md創(chuàng)建文件夾的時候,因為T中有空格,會創(chuàng)建2個文件夾:
比如現(xiàn)在時間是2019-08-23, 08:30:30;
T = 20190823- 83030
md %T%會創(chuàng)建2個文件夾:20190823-和83030這樣2個文件夾。
解決辦法:
把小時單獨(dú)定義h,然后把h中空格用0代替,再把h加入到T中:
set h=% =0% -> 這里的‘='就是‘替換'的含意
pushd E:\Test set h=%time~0,2% set h=% =0% set T=%date:~0,10%-%h%%time:~3,2%%time:~6,2% md %T% popd
到此這篇關(guān)于BAT獲取時間有空格問題的解決方法的文章就介紹到這了,更多相關(guān)BAT時間空格問題內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
標(biāo)簽:滄州 咸寧 海北 阿里 通遼 資陽 韶關(guān) 昌都
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《BAT獲取時間有空格問題的解決方法》,本文關(guān)鍵詞 BAT,獲取,時,間有,空格,問,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。