none
Powershell Get-ChildItem organizado por data RRS feed

  • Pergunta

  • Bom dia pessoal, estou montando um script que movimenta o arquivos mais antigos para uma pasta, no entanto consegui montar apenas como BAT usando o comando "DIR %pasta% /B /O:-D" salvo o nome do arquivo mais antigo em uma variável e depois mando mover o arquivo que está na variável, alguém poderia me ajudar a montar via powershell ?

    Exemplo como está hoje em powershell:                                                          

    Mode                LastWriteTime         Length Name                                                                           
    ----                 -------------         ------ ----                                                                                     

    -a----       29/12/2019     01:21            176 AbnormalAgathion.dat                                                  
    -a----       27/12/2019     17:32           4272 AbnormalDefaultEffect.dat                                            
    -a----       29/12/2019     17:31            432 AbnormalEdgeEffectData.dat                                         
    -a----       29/12/2019     17:32          12592 ActionName-eu.dat                                                     
    -a----       19/01/2020     19:54          11696 ActionName_Classic-eu.dat     

    Exemplo como deveria ser:

    Mode                LastWriteTime         Length Name                                                                           
    ----                 -------------         ------ ----                                                                                   

    -a----       19/01/2020     19:54          11696 ActionName_Classic-eu.dat       
    -a----       29/12/2019     17:32          12592 ActionName-eu.dat                 
    -a----       29/12/2019     17:31            432 AbnormalEdgeEffectData.dat                 
    -a----       29/12/2019     01:21            176 AbnormalAgathion.dat              
    -a----       27/12/2019     17:32           4272 AbnormalDefaultEffect.dat 

    Usei esse exemplo apenas para mostrar a data e hora o correto é usar: Get-ChildItem | Select-Object-ExpandProperty FullName    

    salva o arquivo em uma variável no exemplo seria $Variavel = AbnormalDefaultEffect.dat  e depois move o arquivo para a pasta X:\arquivos\

    Desde já obrigado pela ajuda 




    • Editado xXxDathxXx domingo, 1 de março de 2020 17:17 Erro de digitação
    domingo, 1 de março de 2020 17:10

Respostas

  • Olá, 

    Pode tentar algo assim:

    Get-ChildItem | Sort-Object -Property LastWriteTime | Select-Object-ExpandProperty FullName  


    segunda-feira, 2 de março de 2020 12:18
  • Você quer os mais recentes no topo e os mais antigos em baixo?

    Get-ChildItem |sort LastWriteTime -Descending

    Porque não usa o robocopy?

    Por exemplo para mover tudo que for mais velho que 10 dias de E: para F:

    robocopy e: f:  /s /minage:10


    R. Bohner

    • Marcado como Resposta xXxDathxXx terça-feira, 3 de março de 2020 01:49
    segunda-feira, 2 de março de 2020 12:26

Todas as Respostas

  • Olá, 

    Pode tentar algo assim:

    Get-ChildItem | Sort-Object -Property LastWriteTime | Select-Object-ExpandProperty FullName  


    segunda-feira, 2 de março de 2020 12:18
  • Você quer os mais recentes no topo e os mais antigos em baixo?

    Get-ChildItem |sort LastWriteTime -Descending

    Porque não usa o robocopy?

    Por exemplo para mover tudo que for mais velho que 10 dias de E: para F:

    robocopy e: f:  /s /minage:10


    R. Bohner

    • Marcado como Resposta xXxDathxXx terça-feira, 3 de março de 2020 01:49
    segunda-feira, 2 de março de 2020 12:26
  • Obrigado tinha esquecido do comando robocopy, no caso adicionei o /move para mover os arquivos, 
    terça-feira, 3 de março de 2020 01:50
  • Obrigado, aqui acabou dando erro ao rodar o Sort-Object com o Select-Obhect junto, mas modifiquei aqui e deu certo obrigado. 
    terça-feira, 3 de março de 2020 01:52