最初に、私は PowerShell 初心者です。
そうは言っても、次のスクリプトをまとめるのに時間がかかりました。基本的に、アニメ ファイルを見つけてクリーンアップし、NAS に移動する必要があります。実際には、エラーは発生しませんが、結果も得られません。
Get-ChildItem 'B:\- Anime' |
foreach {
if ($_ -match "Naruto") {
$tofolder = "D:\Anime\Naruto Shippuuden\"
$a = $_.Name
$a = $a.substring(15)
$a = $a.substring(0, $a.length - 11)
$b = $_.extension
$OldName = $_.FullName
$NewName = $tofolder + $a + $b
Move-Item $OldName $NewName -force
}
elseif ($_ -match "Hunter") {
$tofolder = "D:\Anime\Hunter X Hunter (2011)\"
$a = $_.Name
$a = $a.substring(15)
$a = $a.substring(0, $a.length - 11)
$b = $_.extension
$OldName = $_.FullName
$NewName = $tofolder + $a + $b
Move-Item $OldName $NewName -force
}
elseif ($_ -match "Piece") {
$tofolder = "D:\Anime\One Piece\"
$a = $_.Name
$a = $a.substring(8)
$a = $a.substring(0, $a.length - 21)
$a = $a.Replace("One_Piece_","One Piece - ")
$b = $_.extension
$OldName = $_.FullName
$NewName = $tofolder + $a + $b
Move-Item $OldName $NewName -force
}
else {
"I have no idea what to do!"
}
}
ここで何が欠けていますか?
B: マップされたネットワーク ドライブです。D: はマップされたネットワーク ドライブです。私は、このスクリプトが触れるすべてのドライブの管理者です。
Write-Host コマンドを使用すると、すべてのパスが正しくなります。
よろしくお願いします。