BEARBEITEN: ich habe vermisst DDMMYYYY
Anforderung jetzt behoben.
PowerShell-Einzeiler. Öffnen Sie einfach die PowerShell-Konsole in Ihrem Verzeichnis und führen Sie Folgendes aus:
Kompakt:
1..([datetime]::DaysInMonth([datetime]::Now.Year,[datetime]::Now.Month)) | % {md ".\$(([datetime]::ParseExact("$_/$([datetime]::Now.Month)/$([datetime]::Now.Year)", 'd/M/yyyy', [System.Globalization.CultureInfo]::InvariantCulture)).ToString('ddMMyyyy'))"}
Keine Aliase:
1..([datetime]::DaysInMonth([datetime]::Now.Year,[datetime]::Now.Month)) | ForEach-Object {New-Item -ItemType Directory -Path ".\$(([datetime]::ParseExact("$_/$([datetime]::Now.Month)/$([datetime]::Now.Year)", 'd/M/yyyy', [System.Globalization.CultureInfo]::InvariantCulture)).ToString('ddMMyyyy'))"}
Für Menschen lesbar:
1..([datetime]::DaysInMonth([datetime]::Now.Year,[datetime]::Now.Month)) |
ForEach-Object {
New-Item -ItemType Directory -Path ".\$(([datetime]::ParseExact("$_/$([datetime]::Now.Month)/$([datetime]::Now.Year)", 'd/M/yyyy', [System.Globalization.CultureInfo]::InvariantCulture)).ToString('ddMMyyyy'))"
}
Dies ist eher skriptartig, man müsste es als speichern CreateFolders.ps1
und von der PowerShell-Konsole wie folgt ausführen: .\CreateFolders.ps1
. Kommentiert, damit Sie wirklich verstehen können, was unter der Haube passiert:
# Get current Year and Month
$CurrYear = [datetime]::Now.Year
$CurrMonth = [datetime]::Now.Month
# Create new array with numbers from 1 to DaysInMonth
1..([datetime]::DaysInMonth($CurrYear, $CurrMonth)) |
# For each element in array
ForEach-Object {
# Generate name for new directory in ddMMyyyy format
# To do so, we create new DateTime Object with day from pipeline and current year and month
# Then we convert it to the abovementioned format
$DirName = ([datetime]::ParseExact("$_/$CurrMonth/$CurrYear", 'd/M/yyyy', [System.Globalization.CultureInfo]::InvariantCulture)).ToString('ddMMyyyy')
# Correctly join path with current directory and new folder name
$Path = Join-Path -Path (Get-Location).Path -ChildPath $DirName
# Create new directory
New-Item -ItemType Directory -Path $Path
}
Verwandte Frage: Rufen Sie die Anzahl der Tage im aktuellen Monat mithilfe von Powershell ab