我是Powershell的初学者。我有一些疑问。我正在使用Import-Csv cmdlet生成从旧软件生成的制表符分隔文本文件。以下是分隔文件的等效版本。从文本文件我有过滤具有这些条目的destination->observability§bin为1连字符输入参数中的对象Powershell
Time [s] Offset_Angle destination->observability§bin
0.00E+00 -0.20402611670286 0.00000000000000E+00
4.32E+02 0.21319658757004 0.00000000000000E+00
8.64E+02 0.26803683992125 0.00000000000000E+00
1.30E+03 2.67379011780784 1.00000000000000E+00
1.73E+03 -2.89704767087971 1.00000000000000E+00
2.16E+03 -2.93302157473406 1.00000000000000E+00
的代码片段是如下
$ap = Import-Csv -Delimiter "`t" -Path E:\Myfiles\textfile.txt
$ap|where-Object {$_.destination->observability§bin -eq "1.00000000000000E+00”}
我拿到了第一线工作。当我执行第二行时,它会引发错误消息。
At line:1 char:34
+ $ap|where-Object {$_.destination->observability§bin
+ ~
You must provide a value expression following the '-' operator.
At line:1 char:53
+ ... _.destination->observability§bin -eq '1.0000 ...
+ ~~~
Unexpected token '-eq' in expression or statement.
+ CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : ExpectedValueExpression
所以我想它需要输入参数中的' - '符号作为运算符(char 34)。我还在 - 符号之前尝试了一些转义字符,例如后面的勾号(`)。但没有得到任何东西。请帮我解决一下这个。
谢谢。
“observability”和“bin”之间的字符在我的环境中呈现为奇怪的东西。它看起来不像连字符,我认为它不是一个合法的符号组成部分。 –