Hopefully Simple Question About LastWriteTime

This topic contains 0 replies, has 1 voice, and was last updated by  Forums Archives 5 years, 8 months ago.

  • Author
    Posts
  • #5702

    by chuckstaburnt at 2013-03-21 06:36:32

    Hello,

    What I'm trying to do, but am running into difficulty with, is finding directory with the LastWriteTime, ignoring any files which may be in that same directory.

    For instance:
    I have a directory C:\folder and in that folder is FolderA, FolderB, FolderC, FileA, and FileB. I don't care about FileA or FileB and I want to exclude them from the seatch. Currently, This is the line in question.
    $LatestDirectory = GCI -path "C:\folder" | sort LastWriteTime | select -last 1 -expandproperty name

    If FileA is newer than FolderA, B, or C, then $LatestDirectory = FileA.

    Please help.I'm guessing this is rather simple and I'm overlooking something. Thank you.

    by Klaas at 2013-03-21 08:17:48

    Try adding the -directory switch:
    $LatestDirectory = GCI -path "C:\folder" -directory | sort LastWriteTime | select -last 1 -expandproperty name

    by chuckstaburnt at 2013-03-21 10:29:03

    When I tried that, I got the following error:

    Get-ChildItem : A parameter cannot be found that matched parameter name 'directory'.

    by Nobody at 2013-03-21 10:55:16

    This should do the trick.
    $LatestDirectory = GCI -path "C:\folder" | where-object {$_.psiscontainer}|sort LastWriteTime | select -last 1 -expandproperty name

    by chuckstaburnt at 2013-03-21 16:33:04

    That appears to have done the trick! Thank you. Would you mind telling me what $_.psiscontainer means? Are there other objects identified by something like this?

    by Lembasts at 2013-03-21 17:22:00

    psicontainer is true if the object is a folder and false if it is a file.
    The reason the -directory switch didnt work is because I think it requires powershell v3. Probably a good idea to get and install that anyway.

You must be logged in to reply to this topic.