Windows 如何使Powershell脚本在所有子目录中运行?
我已经能够将这个脚本拼凑起来,在不影响扩展名的情况下从文件名中删除句点。我一直在努力让它在子目录中运行,而不是在每个子目录中手动运行它 这是我一直在使用的脚本:Windows 如何使Powershell脚本在所有子目录中运行?,windows,powershell,windows-server-2008,Windows,Powershell,Windows Server 2008,我已经能够将这个脚本拼凑起来,在不影响扩展名的情况下从文件名中删除句点。我一直在努力让它在子目录中运行,而不是在每个子目录中手动运行它 这是我一直在使用的脚本: dir | rename-item -newname { [System.IO.Path]::GetFileNameWithoutExtension($_.name).Replace("."," ") + [System.IO.Path]::GetExtension($_.name); }
dir | rename-item -newname {
[System.IO.Path]::GetFileNameWithoutExtension($_.name).Replace("."," ") +
[System.IO.Path]::GetExtension($_.name); }
最好的
Connor尝试使用类似于
dir-recurse的方法。您可以使用dir/Get ChildItem
的-recurse
开关进行递归搜索(搜索子文件夹)
我还建议使用powershell属性而不是[System.IO.Path]
函数:
$_.BaseName #Filename without extension
$_.Extension #File-extension
我就是这么做的
Get-ChildItem -Recurse | Where-Object { $_.PSIsContainer -eq $false } | Rename-Item -NewName { $_.Basename.replace("."," ") + $_.Extension }