私はpowershellスクリプトを使ってファイル名からいくつかの特殊文字を削除する方法を探しています。Powershellファイル名から特殊文字を削除する
私のファイル名は次のようになります。
[レポート] _first_day_of_month_01_(generated_by_powershell)_ [repnbr1]私は削除の上に不可解されている
.txtの[]と、それらの間のすべてのもの、()、すべてをこれらの、および所望の結果は次のようになり、ファイル名であることで、同様にすべての_さんを削除する間:これまで
01.txt月の
初日、私は無駄に以下の解決策を試してみました。私はファイルが存在するディレクトリからこれらのファイルを実行しました。私はこのタスクを達成しようとしています方法に固有の欠陥があるとし
Get-ChildItem -Path .\ -Filter *.mkv | %{
$Name = $_.Name
$NewName = $Name -Replace "(\s*)\(.*\)",''
Rename-Item -Path $_ -NewName $NewName
}
:それは私がしようとしても動作し、このような時に1セットを行いませんので
Get-ChildItem -Path .\ -Filter *.mkv | %{
$Name = $_.Name
$NewName = $Name -Replace "(\s*)\(.*\)",''
$NewName2 = $NewName -Replace "[\s*]\[.*\]",''
$NewName3 = $NewName2 -Replace "_",' '
Rename-Item -Path $_ -NewName $NewName3
}
。つまり、Move-Itemソリューションを使用するのではなく、Rename-Itemコマンドレットを使用することをお勧めします。
ありがとうございます。限られた成功率でこれに似た解決策を試しましたが、これは100%トリックでした!ありがとうございました! – GreatMagusKyros