windows 批處理腳本定時刪除指定文件夾、文件


1.刪除文件夾:rd /S /Q (rd /? 可以查看命令參數)

@echo off
rem 刪除文件夾
set logPath=D:\tool\DelHisKLineData\log
set dateSuffix=%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%

rem FCT_INDEX_2
rem sh
set klinepath=D:\Server\FCT_INDEX_2\hqservice\data\sh
rd /S /Q %klinepath%\min1kline >> %logPath%\DelHisKLine_%dateSuffix%.txt
rd /S /Q %klinepath%\min5kline >> %logPath%\DelHisKLine_%dateSuffix%.txt
rd /S /Q %klinepath%\min15kline >> %logPath%\DelHisKLine_%dateSuffix%.txt
rd /S /Q %klinepath%\min30kline >> %logPath%\DelHisKLine_%dateSuffix%.txt
rd /S /Q %klinepath%\min60kline >> %logPath%\DelHisKLine_%dateSuffix%.txt

rem sz
set klinepath=D:\Server\FCT_INDEX_2\hqservice\data\sz
rd /S /Q %klinepath%\min1kline >> %logPath%\DelHisKLine_%dateSuffix%.txt
rd /S /Q %klinepath%\min5kline >> %logPath%\DelHisKLine_%dateSuffix%.txt
rd /S /Q %klinepath%\min15kline >> %logPath%\DelHisKLine_%dateSuffix%.txt
rd /S /Q %klinepath%\min30kline >> %logPath%\DelHisKLine_%dateSuffix%.txt
rd /S /Q %klinepath%\min60kline >> %logPath%\DelHisKLine_%dateSuffix%.txt


rem 刪除文件夾
rem FCT_INDEX
rem sh
set klinepath=D:\Server\FCT_INDEX\hqservice\data\sh
rd /S /Q %klinepath%\min1kline >> %logPath%\DelHisKLine_%dateSuffix%.txt
rd /S /Q %klinepath%\min5kline >> %logPath%\DelHisKLine_%dateSuffix%.txt
rd /S /Q %klinepath%\min15kline >> %logPath%\DelHisKLine_%dateSuffix%.txt
rd /S /Q %klinepath%\min30kline >> %logPath%\DelHisKLine_%dateSuffix%.txt
rd /S /Q %klinepath%\min60kline >> %logPath%\DelHisKLine_%dateSuffix%.txt

rem sz
set klinepath=D:\Server\FCT_INDEX\hqservice\data\sz
rd /S /Q %klinepath%\min1kline >> %logPath%\DelHisKLine_%dateSuffix%.txt
rd /S /Q %klinepath%\min5kline >> %logPath%\DelHisKLine_%dateSuffix%.txt
rd /S /Q %klinepath%\min15kline >> %logPath%\DelHisKLine_%dateSuffix%.txt
rd /S /Q %klinepath%\min30kline >> %logPath%\DelHisKLine_%dateSuffix%.txt
rd /S /Q %klinepath%\min60kline >> %logPath%\DelHisKLine_%dateSuffix%.txt

2.刪除指定文件:del /F /S /Q

rem 刪除文件
rem 查看del命令的參數:del /?
@echo off
setlocal enabledelayedexpansion
rem 變量延遲

set logPath=D:\tool\DelLog\log
set path=D:\app\taf\app_log\IndicatorSys\FormulaCalcServer
set dateSuffix=%DATE:~0,4%%DATE:~5,2%%DATE:~8,2%

for /r %path% %%i in (*.*) do (
	rem echo 完整路徑: %%i
	rem echo 無后綴路徑: %%~dpni
	rem echo 所在目錄: %%~dpi
	rem echo 完整文件名: %%~nxi
	rem echo 不帶后綴文件名: %%~ni
	rem echo 文件后綴: %%~xi
	set filename=%%~nxi
	set filetmp=%%~ni
	echo 文件日期后綴: !filetmp:~-8,8!
	set datetmp=!filetmp:~-8,8!
	if /I !datetmp! LSS %dateSuffix% (
		echo !datetmp!
		echo:
		del /F /S /Q %path%\!filename! >> %logPath%\delLog_%dateSuffix%.txt
	) else (
		echo GEQ
		echo:
	)
)

rem 右括號和左括號要和else在同行,else兩邊需要有空格

 setlocal enabledelayedexpansion的作用參見:https://www.cnblogs.com/ydhliphonedev/archive/2012/09/25/2702092.html

參見:https://www.yiibai.com/batch_script/batch_script_operators.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM