Что касается…
«Пробовали другие способы чтения содержимого из файла.»
... о каких еще способах ты говоришь? Чтобы прочитать файл, вы должны либо зациклить, как показано в посте, либо вы вносите его в сыром виде. Если вы пытаетесь обработать много контактов, это означает зацикливание. Это все, что делает эта линия.
$regex
Это просто переменная, в которой есть некоторая строка, с которой нужно сравнивать значения true или false, но эта часть кода не отображается.
# Read the shortcuts file, one line at a time, to the end of the file
# If any line read, matches the regex string, do something with that match
foreach ($line in Get-Content $ShortcutsFile) {
if ($line -match $regex)
Обновление для OP
Что касается вашего поста и варианта использования, его можно настроить на это.
# What is in the file
Get-Content -Path 'C:\Temp\QuickLinks.txt'
c:\scripts
C:\techtools
c:\temp
$ShellObj = New-Object -ComObject shell.application -Verbose
ForEach ($line in (Get-Content -Path 'C:\Temp\QuickLinks.txt'))
{$ShellObj.Namespace($line).Self.InvokeVerb("pintohome")}