У меня есть главная папка, в которой находятся другие папки с файлами .mkg. Эти папки имеют определенный формат.
Папка = NameSer ie .SxEy.Randomstuf
Элемент в папке = NameSer ie .SxEy.Randomstuf.mkv
Где x - номер сезона, а y - номер эпизода.
Я хочу автоматически создать папку, если nameSer ie еще не создан, и поместить файлы .mkv в эту папку.
Итак, если у нас есть папки с именем NameSer ie .SxEy.Randomstuf, мы проверяем, существует ли папка NameSer ie, если не создаем ее. Затем мы вводим папку NameSer ie .SxEy.Randomstuf и копируем файл NameSer ie .SxEy.Randomstuf.mkv в папку NameSer ie.
имя файла необходимо изменить с NameSer ie .SxEy.Ra.n [dom} stuf.mkv для NameSer ie .SxEy.mkv, но я не могу понять, как удалить случайную вещь после NameSer ie .SxEy. <> .Mkv
Это код, который мне удалось создать, но я все еще застрял. Мне удалось создать папку, если она не существует, но это работает, только если файл .mkv отсутствует в папке.
$Location = "\\<ip>\Share\Media\Series"
#rename files
Get-ChildItem $Location | Rename-Item -NewName {$_.Name.Replace(" [480p]","") }
#make folder for serie if it does not exist
Get-ChildItem "$Location\*.mkv" |
Foreach-Object {
$FullName = $_.Name
$pos = $FullName.IndexOf(" - ")
$Name = $FullName.Substring(0, $pos)
Write-Host $_.FullName
$TARGETDIR = "$Location\$Name"
if( -Not (Test-Path -Path $TARGETDIR ) )
{
New-Item -ItemType directory -Path $TARGETDIR
}
Move-Item -Path $_.FullName -Destination $TARGETDIR
}