window 日志清除

@echo off
set srcDir="D:\ApplicationLogs"
set daysAgo=15
forfiles /p %srcDir% /s /m *.* /d -%daysAgo% /c "cmd /c del /D @path"

 

清除与bat文件同目录的Temp文件夹的2种方法

@echo off
echo 正在清除^^文件,请稍等……
::第一种方法清除Temp文件夹下的所有子文件夹和文件
del "%~dp0Temp\*.*" /f/s/q/a
set ph="%cd%\Temp"
for /f "delims=" %%i in ('dir /ad/b/s %ph% ') do (if exist "%%i" rd /s/q "%%i")
echo 清除完毕!
pause
exit

@echo off
echo 正在清除^^文件,请稍等……
::第二种方法清除Temp文件夹下的所有文件(包括子文件夹内的文件),保留7天内的文件并且不会删除子文件夹
set ph="%cd%\Temp"
forfiles /p "%ph%" /m *.* /d -7 /c "cmd /c del @path"
echo 清除完毕!
pause
exit


知识点:echo为在Dos窗口显示的信息
            ::          为注释
             %~dp0Temp    表示同目录下Temp的全路径
            %cd%\Temp     表示同目录下Temp的全路径
           pause    暂停   按任意键后继续

拓展:
判断文件夹是否为空
dir /a /s /b "D:\Temp" | findstr . >nul && echo "此文件夹不为空" || echo "此文件夹为空"
bat获取当前目录

@echo off
echo 当前盘符:%~d0
echo 当前盘符和路径:%~dp0
echo 当前盘符和路径的短文件名格式:%~sdp0
echo 当前批处理全路径:%~f0
echo 当前CMD默认目录:%cd%
::上一级目录路径
echo 当前目录:%cd%
cd..
echo 上一级目录路径是:%cd%
::上一级目录名称这个有的地方好用有的会返回上级目录路径
echo 当前目录:%cd%
if %cd%==%cd:~,3% echo 当前目录已经是%cd:~,1%盘的根目录!&goto end
cd..
set "bd=%cd%"
cd..
set "bbd=%cd%"
if "%bbd%"=="%bd%" (echo 上一级目录是: %cd:~,1%盘的根目录!
) else call echo 上一级目录是: "%%bd:%bbd%\=%%"
:end
::当前盘符
echo 当前盘符:%cd:~,1%
::根目录
echo 根目录:%cd:~,3%
pause


日期:
@echo off
::日期
echo 日期: %date%
::时间
echo 时间: %time%
::短日期
echo 短日期:%date:~0,10%
pause
exit

结果:


将同目录的exe加入开机启动项

@echo off
set b=%~dp0
echo "注册EXE路径:%b%word.exe"
pause
reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v word /d "%b%word.exe"
pause

取消同目录exe的开机启动项

reg delete HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v word /f

获取文件或文件夹名称、修改时间、大小、路径

@echo off
set /p a=请将文件夹拉入本窗口内:
for %%i in (%a%) do (
 echo 名称: %%~ni
 echo 修改时间: %%~ti
 echo 大小: %%~zi
 echo 路径: %%~dpi
)
pause

posted @ 2019-03-23 20:36  干干干  阅读(1110)  评论(0编辑  收藏  举报