ПРИМЕЧАНИЕ : Поскольку вопрос How do i fix “positional parameter cannot be found that accepts ”+“
, позвольте мне ответить именно на этот вопрос. В приведенном ниже ответе не рассматриваются другие проблемы, которые могут возникнуть после устранения неполадки.
То, что вы должны увидеть в сообщении об ошибке, выглядит примерно так:
PS C:\SO\56526906> Add-Content 'destination.txt' $a + $b + $c
Add-Content : A positional parameter cannot be found that accepts argument '+'.
At line:1 char:1
+ Add-Content 'destination.txt' $a + $b + $c
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Add-Content], ParameterBindingException
+ FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.PowerShell.Commands.AddContentCommand
Который указывает вам непосредственно на линию, где происходит ошибка. В этом случае это потому, что вы задаете следующие параметры для Add-Content
:
$destination
$hit
+
$hit.LineNumber
+
'`n'
Пока вы должны добавлять только пункт назначения и контент. Ваш вызов Add-Content
должен выглядеть следующим образом:
Add-Content $destination "$hit $($hit.LineNumber)"
Обратите внимание, что вам не нужно добавлять `n после Add-Content
, поскольку новые строки будут добавляться автоматически.