Eu uso isso:
$parent = 'c:\myrar_files'
$files = @()
Get-ChildItem $parent -Recurse -Filter "*.rar" | % {
# Recurse through all subfolders looking for .rar files only.
$files = $files + $_.FullName
}
foreach ($f in $files) {
# UnRAR the files. -y responds Yes to any queries UnRAR may have.
C:\scripts\WinRAR\unrar x -y $f
}