IVa_, Запустил в режиме второй версии, действительно ошибка. Исправьте эту строку:
Код:

$files = @(gci $dir.fullname '*.jpg')
Дело в том, что если в папке только один jpg-файл, то переменная $files имеет строковой тип (string), а предполагается массив (array).
На счет книг. Вот ссылка на отличный материал:
http://powershell.com/cs/blogs/ebookv2/default.aspx
Раньше была доступна в формате PDF, могу скинуть.