首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过PowerShell操作文本文件中的字符串以返回特定值

通过PowerShell操作文本文件中的字符串以返回特定值
EN

Stack Overflow用户
提问于 2014-04-10 17:45:04
回答 1查看 1.1K关注 0票数 0

我目前正在尝试从assemblyinfo.cs文件中提取版本号,然后仅将版本号1.2.3.4附加到另一个文本文件中。

我尝试使用.split()方法,但只有当项已经是字符串时(从我所阅读的内容中)并且使用select-string从文本文件中提取整个字符串时,才能使用该方法。

下面是我的工作

$a = cat "c:\path_to_file\AssemblyInfo.cs“= select-string AssemblyVersion

将产生: AssemblyVersion("5.7.4.1")

如果我尝试做$a.split(‘“’'),我会得到

方法调用失败,因为[System.Object[]]不包含名为“拆分”的方法。一行:1字符:21+ $versionstring.split <<<< (‘“') + CategoryInfo : InvalidOperation:(拆分:String) [],RuntimeException + FullyQualifiedErrorId : MethodNotFound

正如我所说,这是因为它被认为是一个对象,而不是一个字符串。

我想要的结果是这样的:

代码语言:javascript
运行
复制
PS C:\> $a = '[assembly: AssemblyVersion("5.7.4.1")]'
$b = $a.split(' " ')
$b[2]
5.7.4.1

我假设问题是因为我使用CAT显示内容,然后拉出字符串,我不确定。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-04-10 17:49:55

Select-String返回MatchInfo对象。该行的字符串值位于该对象的.line属性中。

代码语言:javascript
运行
复制
 $a.line.split(' " ')

应该给你你想要的结果。

使用

代码语言:javascript
运行
复制
 $a | Get-Member 

要查看返回的所有可用属性,请执行以下操作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22995305

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档