DOS 指令 COPY 如何將複製過來的檔以日期命名

DOS 指令 COPY 如何將複製過來的檔以日期命名

假如說以下

COPY D:\Thunder\Profiles\history6.dat D:\Thunder\backuplst /Y

history6.dat 要以日期命名 也就是每天複製過來的history6.dat 會隨著日期不同

也就不會覆蓋到上一個history6.dat 例如: 11-11.dat 11-12.dat 這樣

我主要是不要覆蓋到每次程式所產生的同檔名的DAT檔 還是有其它方式可以達成 ?不要以日期命名也成

要將所有DAT檔保留 現在問題是他都是同檔名的會自動覆蓋!

Update:

C:\Documents and Settings\user>COP

\backuplst\%date%.dat" /Y

系統找不到指定的路徑。

複製了 0 個檔案。

Update 3:

拿掉" " 之後變 date%.dat命令語法不正確。

Update 5:

測試成功 但是如果我想以時間不要以日期呢 ? 因為程式常常錯誤 日期的方式就跟原檔名一樣會被覆蓋 我想用時間來區別 時間指令是什麼?

Comments

  • 以下在 XP 測試可行

    1. 開始 → 控制台 → 日期、時間、語言和區域選項 → 變更數字、日期和時間格式 → 自訂 → 日期

    2. 將簡短日期的【日期分隔符號】改為【-】→ 確定 → 確定

    3. 將批次檔改為

    COPY D:\Thunder\Profiles\history6.dat "D:\Thunder\backuplst\%date%.dat" /Y

    4. 測試看看

    應該會產生這樣的檔案

    D:\Thunder\backuplst\2009-11-12 星期四.dat

    2009-11-13 08:52:51 補充:

    時間您可能不會想用

    因為時間的分隔符號是冒號

    剛好和磁碟機表示一樣

    除非再自訂一次時間格式

    例如將分隔符號改成全形冒號

    電腦時間顯示看起來可能會有點怪

    2009-11-13 08:54:35 補充:

    1. 開始 → 控制台 → 日期、時間、語言和區域選項 → 變更數字、日期和時間格式 → 自訂 → 時間

    2. 將簡短日期的【時間分隔符號】改為【:】→ 確定 → 確定

    3. 將批次檔改為

    COPY D:\Thunder\Profiles\history6.dat "D:\Thunder\backuplst\%time%.dat" /Y

    4. 測試看看

    應該會產生這樣的檔案

    D:\Thunder\backuplst\ 8:47:54.26.dat

    2009-11-13 09:02:34 補充:

    另外有一個不用字訂日期、時間格式的方法

    COPY D:\Thunder\Profiles\history6.dat "D:\Thunder\backuplst\%random%.dat" /Y

    %random% 會產生一個亂數

    缺點是還是有可能會重複

    請參閱

    http://forum.icst.org.tw/phpbb/viewtopic.php?t=101...

    http://forum.icst.org.tw/phpbb/viewtopic.php?f=10&...

    2009-11-13 09:05:47 補充:

    %random% 會隨機產生從 0 - 32767 的亂數

  • 如果你是因為要備份, 建議你用備份軟體, 就有你要的功能

    1.備份精靈

    2.cobian http://www.cobiansoft.com/cobianbackup.htm

Sign In or Register to comment.