none
сравнить дату создания и дату изменения файла RRS feed

  • Вопрос

  • Доброго времени суток.

    Для очистки старых файлов раньше пользовался "forfiles /D" и все устраивало, но возникла проблема. Удаление выложенных вчера файлов с датой изменения год назад приводит к их удалению. В связи с этим вопрос. Можно ли (я понимаю, что можно, но не совсем представляю как) вытаскивать дату создания файла, дату изменения, сравнивать их и удалять если и то и то больше например 60и дней? Спасибо за ответ.

    27 октября 2017 г. 13:26

Ответы

  • ls -file|?{$_.CreationTime -lt $(get-date).AddDays(-60) -and $_.LastWriteTime -lt $(get-date).AddDays(-60)}|rm -whatif

    как то так, проверьте


    • Изменено Svolotch 27 октября 2017 г. 14:06
    • Предложено в качестве ответа Vector BCOModerator 28 октября 2017 г. 7:47
    • Помечено в качестве ответа KazunEditor 30 октября 2017 г. 14:24
    27 октября 2017 г. 14:04

Все ответы

  • ls -file|?{$_.CreationTime -lt $(get-date).AddDays(-60) -and $_.LastWriteTime -lt $(get-date).AddDays(-60)}|rm -whatif

    как то так, проверьте


    • Изменено Svolotch 27 октября 2017 г. 14:06
    • Предложено в качестве ответа Vector BCOModerator 28 октября 2017 г. 7:47
    • Помечено в качестве ответа KazunEditor 30 октября 2017 г. 14:24
    27 октября 2017 г. 14:04
  • Доброго времени суток,

    что-то я делаю не так. но поиск по хэлпу пока ничего не дал. может подскажете куда копать?

    ls работает прекрасно, но выдает перечень файлов и папок. а папки трогать нет необходимости. только файлы.

    а ls -file выдает ошибку

    PS D:\> ls -File
    Get-ChildItem : Не удается найти параметр, соответствующий имени параметра "File".
    строка:1 знак:9
    + ls -File <<<<
        + CategoryInfo          : InvalidArgument: (:) [Get-ChildItem], ParameterBindingException
        + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand

    несмотря на то, что в хэлпе указано, что параметр -file существует. https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.management/get-childitem?view=powershell-3.0

    что-то я не так делаю.

    7 ноября 2017 г. 10:10