PowerShell не может удалить пробел между текстом и строкой - PullRequest
0 голосов
/ 26 сентября 2018

В PowerShell я пытаюсь найти способ удалить текст из вывода текста и строки.

Write-Host 'File located at C:\'$Fileline.FilePath -

Я получаю вывод

c:\ program files\path

Пробел между c: \ и "Program Files" - это то, что я хочу удалить.Нужно ли преобразовывать текст в строку, а затем выводить ее в виде двух строк, а затем удалять пробелы?

Ответы [ 2 ]

0 голосов
/ 26 сентября 2018

Попробуйте использовать оператор форматирования PowerShell -f:

Write-Host ("File located at C:\{0} -" -f $FileLine.FilePath)

Хорошая информация о -f в SS64 и TechNet

0 голосов
/ 26 сентября 2018

Это происходит потому, что вы передаете несколько строк в Write-Host, которые затем соединяются с пробелами.Это поведение несколько уникально для Write-Host.

. Вы можете удовлетворить свои потребности, отправив строку с двойными кавычками в Write-Host, после чего вы можете поместить свою переменную внутрь, и она будет расширена.Однако, поскольку вы обращаетесь к свойству переменной, вам нужно заключить его в подвыражение: $():

Write-Host "file located at C:\$($Fileline.FilePath) -"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...