ファイル名の一部を名前変更または削除しようとしています。更新されたファイルをあるサーバーから別のサーバーに移動するスケジュールされたジョブがあります。ファイルを移動したら、名前を変更する必要があります。例: Filename_01-23-AB.exe
to Filename.exe
「_」から「.」までのすべてを削除したい 拡張子はそのままにしておきます。これを行う必要がある次のコードを見つけましたが、動作させることができないようです。私はここで正しい道を進んでいますか?
## Removes the build number from the filename of "Filename_XX-XX-XX.exe" leaving the new filename to be "Filename.exe" ##
$File = -Path "C:\Temp\TestPath\"
foreach ($File in gci *.exe) {
$Fname = ($File.name).split('.')[0] ## item before the '.' ##
$Prefix = $Fname.split('_')[0] ## item before the '_' ##
$Newname = $Prefix + '.exe'
Rename-Item $file $Newname
}