<# .SYNOPSIS Show current directory details .EXAMPLE direc -List .EXAMPLE direc -GetTextsContent .NOTES Alias: direc #> [CmdletBinding()] param ( # Print children directories status (empty|full) [Parameter(ParameterSetName = "List", Position = 0)] [switch] $List, # Print children textfiles content [Parameter(ParameterSetName = "GetTextsContent", Position = 0)] [switch] $GetTextsContent ) . $SCRIPTSRC try { switch ($true) { $List { $dirs = @(Get-ChildItem -Directory) if (!$dirs) { Write-Host "❌ No directories" break; } $full = @{} $empty = @() foreach ($dir in $dirs) { Set-Location $dir $size = @(Get-ChildItem).Count if ($size -gt 0) { $full["+ $($dir.Name)"] = "$size $($size -eq 1 ? "File." : "Files.")" } else { $empty += "- $($dir.Name)" } Set-Location .. } $total = $dirs.Count $fCount = $full.Count $eCount = $empty.Count if ($fCount -lt 1) { Write-Host "ℹ️ The $total directories here are empty" break } Write-Host $($fCount -eq 1 ? "ℹ️ 1 full directory" : "ℹ️ Full directories: $fCount/$total") foreach ($dir in $full.Keys) { Write-Host $dir -ForegroundColor Green Write-Host "$($full[$dir])" } Write-Host `r if ($eCount -gt 0) { Write-Host $($eCount -eq 1 ? "ℹ️ 1 empty directory" : "ℹ️ Empty directories: $eCount/$total") foreach ($dir in $empty) { Write-Host $dir -ForegroundColor Red } Write-Host "`n" } break } $GetTextsContent { $files = @(Get-ChildItem -File) if (!$files) { Write-Host "❌ No files" break; } Write-Host "`n" foreach ($file in $files) { Write-Host "$($file.Name) :" -ForegroundColor Green Get-Content $file Write-Host "`n" } break } } } catch { errorLog }