簡體   English   中英

用於將文件移動到新目錄的批處理命令

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM