[英]Batch command to move files to a new directory
我想編寫一個批處理作業,執行時將獲取C:\\Test\\Log
文件夾中的所有文件,並將它們移動到C:\\Test
的新目錄。 這個新目錄將有一個名為“Backup-”和CURRENT DATE的名稱。
因此,一旦完成,日志文件夾應為空,所有文件現在都位於新文件夾中。
我知道我必須使用MOVE
命令,但不知道如何動態創建新文件夾,並使用日期來命名它。
這樣的事情可能會有所幫助:
SET Today=%Date:~10,4%%Date:~4,2%%Date:~7,2%
mkdir C:\Test\Backup-%Today%
move C:\Test\Log\*.* C:\Test\Backup-%Today%\
SET Today=
重要的是第一行。 它獲取內部DATE
值的輸出並將其解析為名為Today
的環境變量,格式為CCYYMMDD
,如'20110407`。
%Date:~10,4%
表示從位置10開始提取4個字符的Date
環境變量'Thu 04/07/2011'(內置 - 在命令提示符下鍵入echo %Date%
)的子字符串( 2011
)。 然后它連接Date:
另一個子串Date:
從位置4開始為2個字符( 04
),然后從位置7( 07
)開始連續兩個額外的字符。
*子字符串值起始點是從0開始的。
您可能需要根據語言環境中的日期格式調整這些值,但這應該為您提供一個起點。
如果你願意,這也會有用
xcopy C:\Test\Log "c:\Test\Backup-%date:~4,2%-%date:~7,2%-%date:~10,4%_%time:~0,2%%time:~3,2%" /s /i
del C:\Test\Log
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.