var 1, linha de comando, subdiretório que não contém um arquivo .zip com pelo menos 7 dias:
powershell $tm=(get-date).AddDays(-7);ls "C:\ArcherBackup" -fo -r^|?{$_.PSIsContainer}^|%{ls "$($_.FullName)" -fo -fi *.zip}^|?{$_.CreationTime -lt $tm}^|group Directory^|FT -H Name
var 2, linha de comando, subdiretório que não contém um arquivo .zip com pelo menos 7 dias;
exceto arquivos ocultos e diretório:
powershell $tm=(get-date).AddDays(-7);ls "C:\ArcherBackup" -r^|?{$_.PSIsContainer}^|%{ls "$($_.FullName)" -fi *.zip}^|?{$_.CreationTime -lt $tm}^|group Directory^|FT -H Name
subpastas vazias sem arquivos:
powershell $d=ls -r^|?{$_.PSIsContainer};$d^|?{$_.GetFiles().Count -eq 0}^|FT -H FullName
subpastas sem arquivos zip:
powershell $d=ls -r^|?{$_.PSIsContainer};$d^|?{$_.GetFiles('*.zip').Count -eq 0}^|FT -H FullName
subpastas sem arquivos zip;
sub diretório que não contém um arquivo .zip com pelo menos 7 dias:
powershell $d=ls "C:\ArcherBackup" -fo -r^|?{$_.PSIsContainer};$tm=(get-date).AddDays(-7);$d^|%{ls "$($_.FullName)" -fo -fi *.zip}^|?{$_.CreationTime -lt $tm}^|group Directory^|FT -Au -H Name, Count;$d^|?{$_.GetFiles('*.zip').Count -eq 0}^|FT -H FullName|findstr [/s]| more
|findstr [/s]| - exclui uma string vazia no pipe
FT - alias Format Table
FT -H FullName - formato de saída, selecione apenas FullName
-Au alias -Autosize
-H -hide header,
? - alias where - alias Where-Object
% - alias foreach - alias ForEach-Object
-fo - alias -force , fi - alias -filter , -r - alias -recurse
^ - escape do caractere | - o shell atual não é processado como pipeline -command
group - alias Group-Object