我正在使用PowerShell打开PDF文件,因此我可以从中删除一些数据。
我正在声明字符串的文件路径,但文件名的最后五个字符对我来说是未知的。该文件位于共享文件夹中,前10个字符在文件名中是唯一的,因此我可以使用它们来识别文件。
如何使用通配符为文件的最后部分选择文件?
到目前为止,我有:
$filePath = "c:temp\" + $currentYear + "\" + "file201520_*****.pdf"
答案 0 :(得分:1)
只需使用Get-Item
:
$dirPath = Join-Path 'C:\temp' $currentYear
$filePath = Join-Path $dirPath 'file201520_*.pdf'
$file = Get-Item $filePath
如果文件名包含当前日期,您可以将其计算在内:
$today = Get-Date -f 'yyyydd'
$dirPath = Join-Path 'C:\temp' $currentYear
$filePath = Join-Path $dirPath "file${today}_*.pdf"
$file = Get-Item $filePath
答案 1 :(得分:1)
“*”是匹配零个或多个字符的通配符。还有另一个通配符“?”,它只匹配一个字符。因此,如果您将文件路径指定为
$filePath = "c:temp\" + $currentYear + "\" + "file201520_?????.pdf"
你应该得到你想要的东西。
请参阅 Wildcards