我知道Stackoverflow中有多个问题,说如何使用当前日期作为文件夹名称,但是我正在寻找不同的东西。
如果今天的日期是1/22/2017
,我希望有三个文件夹:
C:\2017
└───1
└───22
该目录看起来像
C:\2017\1\22\
。我将如何去做?
最佳答案
我有一个具有类似设置的批次,
你将不得不适应线Set "DailyPath=C:\Test\%yyyy%\%M%\%d%\"
从您想要的基础开始。
:: CDx.cmd ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
@echo off & SetLocal
for /f "tokens=1delims=." %%A in (
'wmic os get LocalDateTime^|findstr ^^[0-9]'
) do Set _DT=%%A
Set "yyyy=%_DT:~0,4%"
Set /A "M=1%_DT:~4,2% -100"
Set /A "d=1%_DT:~6,2% -100"
Set "DailyPath=C:\Test\%yyyy%\%M%\%d%\"
If not Exist "%DailyPath%" (Echo New %Dailypath%&md "%DailyPath%")
Endlocal&Cd /D "%DailyPath%"
多数民众赞成在Powershell的替代方案。
Function CD# {
$DailyPath = "C:\Test\$(Get-Date -F "yyyy\\M\\d\\")"
IF (!(Test-Path $DailyPath)) { mkdir $DailyPath|out-null }
Set-Location $DailyPath
}
关于windows - 在批处理文件中创建具有分层层次结构的日期,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41795501/