我使用以下脚本查找给定路径中的所有文件扩展名:
Get-ChildItem -Path C:\myshellscript -recurse |
Select-Object FullName, Extension |
ConvertTo-HTML -head $a |
Out-File C:\Script\fileextension.htm
输出:
但我不想显示数值,只显示字母扩展名。所有数字文件扩展名都应为空白,不应显示扩展名,应避免使用数字扩展名
答案 0 :(得分:3)
我添加了Where-Object
cmdlet管道,该管道将删除包含仅整数的所有条目。不过,我认为.7zip
之类的扩展程序有效,因此无法删除它们:
Get-ChildItem -Path C:\myshellscript -recurse |
Where-Object { $_.Extension -match '\D+' } |
Select-Object FullName, Extension |
ConvertTo-HTML -head $a |
Out-File C:\Script\fileextension.htm
答案 1 :(得分:1)
如果你想隐藏扩展名数字
$res=0
gci "C:\myshellscript" -File -Recurse |
select FullName , @{N="Extension";E={if (-not [int]::TryParse($_.Extension.Replace(".", ""), [ref]$res) ) {$_.Extension} else {""}}} |
ConvertTo-HTML -head $a |
Out-File C:\Script\fileextension.htm
如果您想要过滤器扩展数字
$res=0
gci "C:\myshellscript" -File -Recurse | where { -not [int]::TryParse($_.Extension.Replace(".", ""), [ref]$res)}
select FullName , Extension |
ConvertTo-HTML -head $a |
Out-File C:\Script\fileextension.htm