Está dica rápida vem de um pedido de ajuda que recebi no Twitter.
A questão foi simples assim: “Crespi tenho um diretório de backups do SQL Server no Linux e preciso descobrir os diretórios que estão vazios. Como resolver?”
Simples! Use o PowerShell a seu favor.
Você pode utilizar o método GetFileSystemInfos() do do Namespace System.IO.
Este método retorna um array que representa todos os arquivos e subdiretórios.
Para auxiliar na compreensão, execute o comando abaixo:
$dirBackup = gci /mnt/sqlbackup/
$dirBackup.GetFileSystemInfos()
O retorno deste comando será uma lista de dados de diversos arquivos do diretório /sqlbackup. Quando houver arquivos ou subdiretórios os mesmos serão listados, quando não houver o retorno será nulo.

A imagem abaixo exibe o retorno de um diretório vazio.

A partir das informações acima, fica fácil compreender o script que segue:
$dirBackup = gci -Path /mnt/sqlbackup/ -Recurse -Directory
$dirBackup | ForEach -Process {
if ($false -eq $_.GetFileSystemInfos()) { $_.FullName}
}

Aqui fica a dica …
O oposto também é válido, ou seja, para descobrir os diretórios com conteúdo basta trocar o teste de $false para $true.

Era isso PessoALL!
Espero ter ajudado com a essa dica rápida e que pode ser implementada para diferentes tipos de testes.
Abraço, Rodrigo