编码设为ANSI后保存脚本
@echo off & title 获取文件名,修改时间,伍高弯并记录到表格中 By 依梦琴瑶cd /d "%~dp0"
::设置要处理的文件夹
set SrcDir=D:\MyFolder
::设置要处理的文件格式,全部格式请直接用*
set Ext=*
::设置是否包含子目录,是=1,否=其它任何非1的字符
set Sub=0
::保存的表格文件名
set Excel=文件列表表格.xlsx
if "%Sub%"=="1" set "S=/s"
pushd "%SrcDir%"
echo 正在获取中,请耐心等待。。。
(echo "文件名","修改时间"
for /f "delims=" 念粗%%a in ('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
(echo Set oExcel = CreateObject("Excel.Application"^)
echo oExcel.Workbooks.Open "%tmp%\MyFilesListTemp.csv"
echo oExcel.ActiveSheet.Columns("A:O"^).Select
echo oExcel.Selection.EntireColumn.AutoFit
echo oExcel.ActiveWorkbook.SaveAs "%~dp0%Excel%",51
echo oExcel.Quit)>"%tmp%\Csv2Xlsx.vbs"
del /f /q "%~dp0%Excel%" 2>nul
"%tmp%\Csv2Xlsx.vbs"
goto :eof
用bat命令雀携以当前日期为名字建庆闹立文件夹:
set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"md %ymd%
copy /y E:\Anan\*.log E:\Anan\%ymd%\
第一句为建立一个变量,顷差伏并通过%date:~5,2%来组合得出当前日期,组合的效果为yyyymmdd,date命令得到的日期格式默认为yyyy-mm-dd(如果不是此格式可以通过pause命令来暂停命令行窗口看通过%date:~,20%得到的当前计算机日期格式),所以通过%date:~5,2%即可得到日期中的第五个字符开始的两个字符,例如今天为2009-02-05,通过%date:~5,2%则可以得到02。(日期的字符串的下标是从0开始的)
第二句为用MD命令 建立以变量Ymd为名的文件夹
第三句为复制指定的文件到指定的文件夹。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)