获取没有扩展名的文件内容

时间:2016-08-01 21:32:42

标签: powershell powershell-v5.0

在我的环境中使用一些Windows 10计算机,并希望制作一个快速PowerShell脚本来编辑IM程序的配置文件。

一些快速谷歌搜索调整我的脚本有它适用于我的测试文件。它可能不是最优雅的解决方案,但它正在工作,所以我决定给它开绿灯。只是发现Get-Content无法找到我的配置文件,因为它没有扩展名。

这是我的剧本:

(Get-Content "$env:USERPROFILE\AppData\Roaming\Config") | Foreach-Object {
    $_ -replace '^autoawaytime = [0-9]+',("autoawaytime = 9")
} | Foreach-Object {
    $_ -replace '^autoaxtime = [0-9]+',("autoaxtime = 99")
} | Set-Content ("$env:USERPROFILE\AppData\Roaming\Config")

错误;

Get-Content : Cannot find path 'C:\Users\\AppData\Roaming\Config' because it
does not exist.
At C:\Users\\Desktop\textFileEdit.ps1:1 char:2
+ (Get-Content "$env:USERPROFILE\AppData\Roaming\Config" | Select BaseN ...
+  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (C:\Users\bretb\AppData\Roaming\Config:String) [Get-Content], ItemNotFoundException
    + FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetContentCommand

因此我得出结论,问题是我的配置文件缺少文件扩展名,而Get-Content不喜欢这样。有人可以在我的配置文件中提出Get-Content的建议,或者为我提出更优雅的解决方案吗?

1 个答案:

答案 0 :(得分:1)

在这种情况下,看起来配置文件的路径不正确。

共同路径应该是

  

%USERPROFILE%\应用程序数据\漫游\公司\产品\ ExecutableName.Config