Есть несколько способов сделать это в зависимости от вашего ввода -
Метод 1 - Жесткое кодирование с использованием функции подстроки.
$String = "C:\Users\XX\Documents\Data.txt"
$Cut = $String.Substring(22,4)
$Cut
Вышеупомянутый подход будет работать для одного входа, но будет трудно управлять для нескольких входов различной длины.
Метод 2 - Использование метода split
$String = "C:\Users\XX\Documents\Data.txt"
$cut = $String.Split("\")[-1].split(".")[0]
$cut
Split
метод разделит строку на подстроку. Индекс [-1]
вернет последнее значение, возвращенное методом split
.
Второе разделение - вернуть слово Data
из слова Data.txt
.
Метод 3 - Если входной файл является путем к файлу
$string = Get-ChildItem $env:USERPROFILE\Desktop -File | select -First 1
$Cut = $String.BaseName
Подробнее о методе 3 здесь .