iT邦幫忙

0

批次檔自動備份指定日期問題

RAIN 2017-10-18 11:27:029316 瀏覽
  • 分享至 

  • twitterImage

請教各位大大

需要寫一支批次檔,由Windows工作排程加入批次檔,指定當月份(例如9月份)所有檔案備份至其它空間

例如:檔案目錄底下有8月份、9月份、10月份備份檔案
檔名:201708xx_xxx、201709xx_xxx、201710xx_xxx
如果指定201709** (09月份),只要認到檔名開頭201709**
就會自動備份至其它空間?

目前有參考網路上範例:
set xpass=password 
set xday=%date:~0,4%%date:~5,2%%date:~8,2%
set xtime=%time:~0,2%%time:~3,2%
path C:\Program Files\7-Zip
set backup_path1=D:\123
set upload_path1=E:\123
7z a -t7z %upload_path1%bbup%xday%_%xtime%.7zaa %backup_path1% -p%xpass%

如何加上一段指定檔名開頭的日期語法?

謝謝各位

[參考來源](http://blog.xuite.net/tolarku/blog/375646505-%E4%BB%A5+7Zip+%E5%B0%8D%E7%9B%AE%E9%8C%84%E4%BD%9C%E5%82%99%E4%BB%BD%E5%A3%93%E7%B8%AE%E5%8A%A0%E5%AF%86+-+Batch+File+-+Window+%E6%8E%92%E7%A8%8B

看更多先前的討論...收起先前的討論...
Daniel iT邦新手 2 級 ‧ 2017-10-18 15:51:55 檢舉
你也有要用 7zip 來進行壓縮嗎?
試試看改成這樣
xday=%date:~0,4%%date:~5,2%%date:~8,2%*.*
Daniel iT邦新手 2 級 ‧ 2017-10-18 15:53:37 檢舉
更正
xday=%date:~0,4%%date:~5,2%*.*
RAIN iT邦新手 5 級 ‧ 2017-10-19 08:39:14 檢舉
ss512new 你好
我是使用7zip來壓縮檔案並備份至其它空間
剛剛試過好像會出錯 我目錄底下檔名有:201708xx_xxx、201709xx_xxx、201710xx_xxx,但我只要備份當月的也就是認到201710開頭檔名,就會自動壓縮打包備份至其它空間

謝謝
Daniel iT邦新手 2 級 ‧ 2017-10-19 11:40:02 檢舉
你有修改範本以符合你的環境嗎?

%date:~0,4%%date:~5,2%*.* 這個語法就是將你說的 201710 開頭的檔案都列出來
7za.exe a 201710.7z 201710*.* 是這個語法的原型,以此進行改寫就是你要的結果
7za.exe a 201710.7z %date:~0,4%%date:~5,2%*.*
RAIN iT邦新手 5 級 ‧ 2017-10-19 11:55:49 檢舉
你好 已經設定成我的環境 不過他會將201708xx_xxx、201709xx_xxx、201710xx_xxx檔案全部都備份,無法只針對201710xx開頭檔案去做備份

以下是我的測試環境 是否有誤?

謝謝

set xpass=123
set xday=%date:~0,4%%date:~5,2%*.*
set xtime=%time:~0,2%%time:~3,2%
path C:\Program Files\7-Zip\
set backup_path1=D:\test\1\
set upload_path1=D:\test\2\
7z a 201710.7z %date:~0,4%%date:~5,2%*.*_imperva_backup.7z %backup_path1% -p%xpass%
RAIN iT邦新手 5 級 ‧ 2017-10-19 11:55:50 檢舉
你好 已經設定成我的環境 不過他會將201708xx_xxx、201709xx_xxx、201710xx_xxx檔案全部都備份,無法只針對201710xx開頭檔案去做備份

以下是我的測試環境 是否有誤?

謝謝

set xpass=123
set xday=%date:~0,4%%date:~5,2%*.*
set xtime=%time:~0,2%%time:~3,2%
path C:\Program Files\7-Zip\
set backup_path1=D:\test\1\
set upload_path1=D:\test\2\
7z a 201710.7z %date:~0,4%%date:~5,2%*.*_backup.7z %backup_path1% -p%xpass%
Daniel iT邦新手 2 級 ‧ 2017-10-19 15:30:44 檢舉
如果是我應該會這樣寫

7za.exe a -p%xpass% %backup_path1%201710.7z %backup_path1%%date:~0,4%%date:~5,2%*.*

其餘就由您自己發揮
Daniel iT邦新手 2 級 ‧ 2017-10-19 15:31:55 檢舉
上述指令是同一列,沒有斷行
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友回答

立即登入回答