A linha é a seguinte:
Get-ChildItem "D:\" -recurse | Select-Object Name, LastWriteTime,
@{Name="Age";Expression={ (((Get-Date) - $_.LastWriteTime).Days) }},
Length | where-object {$_.Age -ge 760} | where { $_.Length -ne $NULL } |
Out-GridView
Ah que bom Marcelão, mas e aí!? Bom, e aí nobre amigo o resultado é lindo, veja:
Essa maravilha trás o nome do arquivo, a data da última vez que
foi escrito, a idade (em dias) da última vez que foi escrito, o tamanho (em
Bytes), filtra por arquivos iguais ou maiores que 760 dias (o que eu precisava na ocasião) e descarta arquivos
que tem o atribuído Length nulo, ou seja, pastas. Por último e não menos importante ele abre uma view gráfica que imprime o output online. Não é emocionante? hahaha... Sem exageros, ok? Isso aqui não é confeitaria!
Agora vejam alguns atributos interessantes que você pode trocar:
LastWriteTime = Última vez que o arquivo foi escrito, poderia a data de quando foi criado por exemplo (CreationTime).
$.Age –ge 760 = Pode alterar a range de tempo que considerar
como resultado de filtro, para isso basta alterar o número decimal. Caso queira mudar o critério sugiro que pesquise mas pega essa dica: -lt (Menor que); -le (Menor ou igual); -gt (Maior que); -eq (Igual); -ne (Não igual).
Out | GridView = Imprime o resultado em ferramenta gráfica,
pode alternar para exportar direto para um arquivo HTML ou CSV. Essa é fácil né? Export-CSV "nomedoarquivo.csv".
Depois o que fiz foi abrir o resultado em um Excel, formatar uma tabela e aplicar a soma no final. Colhi os resultados e corri para o abraço!
Ah, o resultado... Como ele vem em Bytes eu usei um site para converter e Gigabytes... Finish Him!!!
É isso meu povo, até a próxima psicografia...
Abraço!
Muito bom! Parabéns pelo posto, me ajudou muito...
ResponderExcluirCara, muito obrigado, esses seus comandos me abriram muitas portas de soluções com essa visualização em grid. abraço
ResponderExcluirMarcelo, sei que esse artigo é antigo, mas estou precisando dessa mesma função de script, porém, preciso que liste também o caminho ao qual o arquivo está. Achei excelente seu script.
ResponderExcluirSaberia me informar como adiciono essa informação no script, para que saia o caminho onde o arquivo está localizado?