【问题标题】:Powershell: return filename with highest numberPowershell:返回具有最高数字的文件名
【发布时间】:2014-09-15 00:24:50
【问题描述】:

假设我有一个这样的文件名列表:

Get-ChildItem "Antarctica Data *.xls"

Antarctica Data 03625516.xls
Antarctica Data 84327262.xls
Antarctica Data 16374175.xls
Antarctica Data 12804427.xls
Antarctica Data 17477809.xls
Antarctica Data 60943758.xls
Antarctica Data 93962083.xls
Antarctica Data 74412097.xls
Antarctica Data 81562648.xls
Antarctica Data 58371936.xls

如何使用 Powershell 返回具有最大数字的文件名字符串?

Antarctica Data 93962083.xls

【问题讨论】:

    标签: windows powershell filenames


    【解决方案1】:

    因为名字只是数字不同,所以你需要做的就是对它们进行排序,然后得到最后一个:

    Get-ChildItem "Antarctica Data *.xls" |
    Sort-Object |
    Select-Object -Last 1 -ExpandProperty Name
    

    或者,更简洁:

    (gci "Antarctica Data *.xls" | sort)[-1].Name
    

    输出:

    南极洲数据 93962083.xls

    【讨论】:

    • +1 请注意,此答案仅适用于所有数字均为 8 位数字的情况。前任。 99 将被排序为高于 98765432。从样本来看,应该没问题。只是想为未来的读者提一下。 :)
    猜你喜欢
    • 1970-01-01
    • 2012-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多