我想使用 Powershell 从 Sharepoint 库中仅提取所需的文件类型
我正在使用以下逻辑,但它并没有 100% 正确工作。它仍然匹配文件名包含不好的扩展类型。
请帮我更正脚本。
$libfiles = ".pptx",".xlsx",".xls",".docx",".doc",".pdf",".jpeg",".jpg",".ppt",".xlsm",".gif",".png"
$libfilesregex = [string]::Join('|', $libfiles)
$arr = @("xlsfile.avi","asxlsxfile.mdf","navigation.css")
foreach($i in $arr)
{
if($i -match $libfilesregex)
{
Write-Host " $($i) File type exists "
}
else
{
Write-Host " $($i) File type does not exist "
}
}
正在输出:
xlsfile.avi File type does not exist
asxlsxfile.mdf File type exists
navigation.css File type does not exist
注意没有一个应该被报告为存在,但是 asxlsxfile.mdf
出乎意料的是。
谢谢 维斯瓦
最佳答案
我相信这就是您要找的。我明确地从文件数组中提取文件扩展名,如果扩展名存在则打印。
$libfiles = ".pptx",".xlsx",".xls",".docx",".doc",".pdf",".jpeg",".jpg",".ppt",".xlsm",".gif",".png"
$arr = @("xlsfile.avi","asxlsxfile.mdf","navigation.css", "lib.pptx")
foreach($i in $arr)
{
if($libfiles -contains [io.path]::GetExtension($i))
{
Write-Host "$([io.path]::GetExtension($i)) File type exists "
}
else
{
Write-Host "$([io.path]::GetExtension($i)) File type does not exist "
}
}
关于arrays - 如何从 powershell 中的扩展类型数组中提取/匹配文件类型扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40242865/