Powershell有趣的路径实验 2


你可以使用-split来轻松的分割出一个路径的组成部分。其值一定是一个数组。

简单的使用比较运算符来排除你不想要的部分或重命名某些地方,接着使用-join把路径重新合在一起。

 这将剔除路径中所有子目录包涵“test”词缀的部分:

$path = 'C:\folder\test\unit1\testing\results\report.txt'

$path -split '\\' -notlike '*test*' -join '\'

心得:

这招还是非常实用的,简单易懂,省略了很多代码。

原文地址:Fun with Path Names

本文链接: https://www.pstips.net/fun-with-path-names.html
请尊重原作者和编辑的辛勤劳动,欢迎转载,并注明出处!

回复 荔非苔 取消回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

2 条评论 “Powershell有趣的路径实验

  • 荔非苔

    很好,但是如果只是这一点需求的化,用正则表达式替换,效率更快。PS> $path = ‘C:foldertestunit1testingresultsreport.txt’PS> $path -replace ‘\test.*?\’,’cookie’C:foldercookieunit1cookieresultsreport.txt简单解释两点:1)反斜杠在正则表达式中本身属于特殊字符,需要使用反斜杠转义。2) “.*”匹配任意字符,但是在后面加上问号,为非贪婪匹配。比如,只匹配folder,而不是foldertestunit1testingresults。