Чтобы ответить на ваш второй вопрос первым: чтобы получить родительский полный путь, используйте Split-Path:
$var = Split-Path -parent "c:\folder1\folder2\folder3\XXX\folder4\folder5"
Для вашего другого вопроса эта функция разделит все элементы вашего пути и вернетих в массив:
function Split-Paths($pth)
{
while($pth)
{
Split-Path -leaf $pth
$pth = Split-Path -parent $pth
}
}
Затем вы можете получить 5-й элемент следующим образом:
$xxx = (Split-Paths "c:\folder1\folder2\folder3\XXX\folder4\folder5")[-5]
Обратите внимание, что функция возвращает элементы в «обратном» порядке, поэтому вы используетеОтрицательный индекс к индексу с конца массива.