【问题标题】:How to convert File CreationTime into String in Powershell如何在 Powershell 中将 File CreationTime 转换为字符串
【发布时间】:2015-05-27 13:13:02
【问题描述】:

我在网上找到的所有方法都是使用get-date.toString()当前日期写入字符串

我要做的是从文件中读取CreationDate 和时间,并将其转换为目录名称的字符串。

如果我可以将CreationTime 的不同部分保存到单独的变量中就足够了。

例如:$Year$Month$Day$Hour

我该怎么做呢?

【问题讨论】:

    标签: windows powershell file-properties


    【解决方案1】:

    https://technet.microsoft.com/en-us/library/ee692801.aspx

    (gi C:\temp\trim.csv).CreationTime.ToString('ddd MM dd yyyy')
    

    会给你一个字符串“Wed 05 27 2015”

    更新: 或者如果你想使用字符串作为目录名,只需删除空格。

    (gi C:\temp\trim.csv).CreationTime.ToString('dddMMddyyyy')
    

    并获得“Wed05272015”

    【讨论】:

    • 我相信他想使用文件创建日期作为目录名称,所以没有必要打破属性,我已经更新了我的答案。
    • 你是对的。我误读了最初的要求并专注于妥协。
    • 这个答案有效,但我会使用格式字符串'yyyy-MM-dd',我会将结果保存在$dirname之类的变量中。
    • $dirname = (gi c:\temp\file.txt).CreationTime.ToString('yyyy-MM-dd')
    • 这就是我想要的。原来我所缺少的只是 toString 语句中的单引号。谢谢大家的快速回复
    【解决方案2】:
    $file = get-item c:\myfile.txt
    
    $year = $file.creationtime.year
    $month = $file.creationtime.month
    $day = $file.creationtime.day
    $hour = $file.creationtime.hour
    

    等等……

    使用$file.CreationTime | fl * 获取可用属性列表

    【讨论】:

    • 是的。无需创建变量。属性已经存在。
    • 这个答案是正确的,如果您只是跳过设置变量 $year、$month、$day 的(不必要的)步骤,而是使用 CreationTime 的成员。
    猜你喜欢
    • 1970-01-01
    • 2012-01-15
    • 2019-11-11
    • 1970-01-01
    • 1970-01-01
    • 2013-03-02
    • 1970-01-01
    • 1970-01-01
    • 2014-10-08
    相关资源
    最近更新 更多