Usuário com melhor resposta
Batch File - Remover Diretório mais antigo

Pergunta
-
Olá Amigos;
É possível criar um batch file para remover a pasta mais antiga, de um determinado grupo?
Se afirmativo, poderiam me citar exemplos?
Muito Obrigado.- Movido Richard Juhasz segunda-feira, 10 de janeiro de 2011 18:01 thread movida (De:Windows Server 2003)
Respostas
-
Mendes,
O script abaixo deleta a última pasta criada dentro pasta D:\temp.
strPastaOrigem = "D:\Temp"
Set fso = CreateObject("Scripting.FileSystemObject")
Set Pasta = fso.GetFolder(strPastaOrigem)
Set colSubfolders = pasta.Subfolders
dtUltimaData = DateAdd("y",-100,now)
strUltimaPasta = ""
For each objSubfolder In colSubfolders
if objSubfolder.DateLastModified >= dtUltimaData then
strUltimaPasta = objSubfolder.Name
dtUltimaData = objSubfolder.DateLastModified
end if
next
wscript.echo "O ultimo Diretorio gravado no Caminho " & strPastaOrigem & _
" foi o " & strUltimaPasta & " em " & dtUltimaData
wscript.echo pasta & "\" & strUltimaPasta
'Excluir a Pasta
if strUltimaPasta <> "" then fso.DeleteFolder pasta & "\" & strUltimaPastaPara colocar esse script em alguma rotina (schedular) retire as linhas wscript.echo elas são apenas para mostrar a pasta que será deletada para que você possa realizar um teste no seu ambiente antes de colocar em produção.
Esse script não é bat é vbscript. Você deve salvar com a extenção .vbs.
______________________________________
Elmo Baraúna (MCP - MCDST - MCSA - MCT)
- Sugerido como Resposta Elmo Baraúna quinta-feira, 6 de janeiro de 2011 00:14
- Marcado como Resposta Fábio JrModerator quinta-feira, 12 de janeiro de 2012 12:30
Todas as Respostas
-
Olá Mendes,
Só não entendi a questão da pasta de determinado grupo? Como assim grupo?
Tem como excluir, por exemplo, a última pasta criada dentro de um diretório. Por exemplo. Você tem uma estrutura D:\Diretorios\Mes\ e quer excluir a última pasta criada / alterada dentro da pasta Mes. Mas de um grupo não entendi.
Poderia explicar melhor?
_______________________________________________
Elmo Baraúna (MCP -MCDST - MCSA - MCT) -
Olá Elmo, desculpe não me expressei de maneira correta.
Ignore o termo grupo.
Digamos que eu tenha uma série de pastas em uma determinada unidade:Poderia me dar um exemplo de bat, ou script para remover a pasta mais "Antiga", usando o critério data?
Muito Obrigado. -
Mendes,
O script abaixo deleta a última pasta criada dentro pasta D:\temp.
strPastaOrigem = "D:\Temp"
Set fso = CreateObject("Scripting.FileSystemObject")
Set Pasta = fso.GetFolder(strPastaOrigem)
Set colSubfolders = pasta.Subfolders
dtUltimaData = DateAdd("y",-100,now)
strUltimaPasta = ""
For each objSubfolder In colSubfolders
if objSubfolder.DateLastModified >= dtUltimaData then
strUltimaPasta = objSubfolder.Name
dtUltimaData = objSubfolder.DateLastModified
end if
next
wscript.echo "O ultimo Diretorio gravado no Caminho " & strPastaOrigem & _
" foi o " & strUltimaPasta & " em " & dtUltimaData
wscript.echo pasta & "\" & strUltimaPasta
'Excluir a Pasta
if strUltimaPasta <> "" then fso.DeleteFolder pasta & "\" & strUltimaPastaPara colocar esse script em alguma rotina (schedular) retire as linhas wscript.echo elas são apenas para mostrar a pasta que será deletada para que você possa realizar um teste no seu ambiente antes de colocar em produção.
Esse script não é bat é vbscript. Você deve salvar com a extenção .vbs.
______________________________________
Elmo Baraúna (MCP - MCDST - MCSA - MCT)
- Sugerido como Resposta Elmo Baraúna quinta-feira, 6 de janeiro de 2011 00:14
- Marcado como Resposta Fábio JrModerator quinta-feira, 12 de janeiro de 2012 12:30
-