我試圖編寫一個小腳本來爲幾十個mp3/mp4文件的文件夾/子文件夾自動創建播放列表(m3u),同時省略其中的各種其他misc文件。我對Powershell知之甚少,但設法拼湊了一些幾乎可行的東西。唯一的一點是,當我使用「$ _。extension -eq」時,它似乎不起作用,或者至少我沒有正確使用它。例如,如果我使用它來匹配臨時文件夾中的日誌/ txt文件,它將起作用,但在這種情況下不起作用。下面是代碼 -
$pathname = read-host "Enter path"
$root = Get-ChildItem $pathname | ? {$_.PSIsContainer}
$rootpath = $pathname.substring(0,2)
Set-Location $rootpath
Set-Location $pathname
foreach($folder in $root) {
Set-Location $folder
foreach($file in $folder) {
$txtfile =".m3u"
$files = gci | Where-Object {$_.extension -eq ".mp3" -or ".mp4"}
$count = $files.count
if($count -ge 2){
$txtfile = "_" + $folder.name + $txtfile
Add-Content $txtFile $files
}
}
if(test-path $txtFile){
Add-Content $txtFile `r
}
Set-Location $pathname
}
我試圖像換了「當量」,但沒有運氣「-match」幾個變化。順便說一句,如果我從括號中省略「 - 或」.mp4「」,那麼它工作正常,但我需要它匹配兩者,並且只有mp3/mp4。
在此先感謝。
非常感謝你。現在完美的工作! – gavin19 2010-11-04 19:47:01