Bat時間文件夾
① bat 按時間創建文件夾,還有點疑問
還是試試我的吧:
::══代══碼══開══始═══
@echo
off
set
a=%date:~0,10%_
set
b=%TIME:~0,2%
if
%TIME:~0,2%
leq
9
(set
b=0%TIME:~1,1%)else
set
b=%TIME:~0,2%
set
c=-%TIME:~3,2%-%TIME:~6,2%
echo
"%a%%b%%c%"
md
"%a%%b%%c%"
pause
::Coded
By
escortmnm
from
vbs團隊
::══代══碼══結══束═══
從你的代碼修改來的,當小於等於9的時候截取小時數的最後一位數。
② 用BAT導出文件夾內所有文件名和修改時間,格式為EXCEL,不要完整路徑怎麼弄
編碼設為ANSI後保存腳本
@echooff&title獲取文件名,修改時間,並記錄到表格中By依夢琴瑤
cd/d"%~dp0"
::設置要處理的文件夾
setSrcDir=D:MyFolder
::設置要處理的文件格式,全部格式請直接用*
setExt=*
::設置是否包含子目錄,是=1,否=其它任何非1的字元
setSub=0
::保存的表格文件名
setExcel=文件列表表格.xlsx
if"%Sub%"=="1"set"S=/s"
pushd"%SrcDir%"
echo正在獲取中,請耐心等待。。。
(echo"文件名","修改時間"
for/f"delims="%%ain('dir/a-d%S%/b/tw%Ext%2^>nul')do(
echo"%%~nxa","%%~ta"
))>"%tmp%MyFilesListTemp.csv"
popd
call:WriteXLSXFile
cls&echo文件列表表格生成完畢,請在腳本同目錄下查看「%Excel%」。
pause
exit
:WriteXLSXFile
(echoSetoExcel=CreateObject("Excel.Application"^)
echooExcel.Workbooks.Open"%tmp%MyFilesListTemp.csv"
echooExcel.ActiveSheet.Columns("A:O"^).Select
echooExcel.Selection.EntireColumn.AutoFit
echooExcel.ActiveWorkbook.SaveAs"%~dp0%Excel%",51
echooExcel.Quit)>"%tmp%Csv2Xlsx.vbs"
del/f/q"%~dp0%Excel%"2>nul
"%tmp%Csv2Xlsx.vbs"
goto:eof
③ bat 按時間創建文件夾
試試我的:
::══代══碼══開══始═══
@echo off
title %date% %time:~,8% by escortmnm
set abc=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%
md d:\xxx\%abc%
/y a.txt d:\xxx\%abc%
pause
::Coded By escortmnm from vbs團隊
::══代══碼══結══束═══
④ 怎麼創建是以時間命名的bat文件夾並保留當天文件夾刪除前一天的文件夾
用批命令進行運算是很麻煩的。因此不建議在一個批命令里處理兩個日期數據。可以前一天23點59分就刪除當天文件夾,0點過後建立新的當天文件夾。 0點前執行刪除文件夾批命令,語句:deltree -y %DATE:~0,10% 0點後執行建立文件夾批命令,語句rd %DATE:~0,10%
⑤ 怎麼創建是以時間命名的bat文件夾並保留當天文件夾刪除前一…
和樓上的答案類似。
代碼:
@echo off
@if not exist "%date%" md "%date%"
::以日期為名創建文件夾。
@dir ????-??-???星期? /a:d /b>.txt
::羅列本目錄下所有日期格式命名的子目錄到.txt文件裡面。
@for /f "delims=*" %%a in (.txt) do if not "%%a"=="%date%" rd /s /q "%%a"
::刪除其他文件夾。
del .txt /a /f /q
::刪除.txt文件。