powershell - 仅当路径有空格时,使用 Raw 非参数获取内容错误
问题描述
所有代码都有效,除非我在可能的路径中有空格,如果出现空格,则路径有双引号。下面是导致错误的代码,例如“C:\Test Debug\Test.txt”。
错误:找不到与参数名称“原始”匹配的参数。
function TurnOffDebug($path){
try {
$Content = (Get-Content -Path ($path) -Raw) -replace "Debug=-1","Debug=0"
Set-Content -path ($path) -Value $Content -NoNewline
return $true
}catch {
Write-Host $_
$dateVersion = Get-Date -Format "dd/MM/yyyy HH:mm:ss"
$logEntry = "$($dateVersion)- Could not set version - $($path)"
LogWrite $logEntry
return $false
}
}
解决方案
即使 -LiteralPath 不适用于 -Raw
https://github.com/PowerShell/PowerShell/issues/6954 ,它也是一个错误
解决方法是路径中的任何空格我关闭 -raw 并在 set-content 上删除 -nonewline
$FilePath = 'C:\W10\New\VB\NEW\Load Configuration File\ConfigFileIO.txt'
$content =(Get-Content -LiteralPath $FilePath ) -replace "Debug=-1" , "Debug=0"
Set-Content -path $FilePath -Value $content
但是当我使用相同的代码时,我得到 Get-Content : Cannot find drive。名为“C”的驱动器不存在。
推荐阅读
- python - torchvision 没有安装torch怎么办?
- python - 使用python mysql连接器时如何使用变量作为属性名称
- bixby - 在结果视图中选择卡片后开始播放音频
- amazon-web-services - 使用 AWS 创建分布式应用程序
- javascript - 如何在页面加载谷歌地图时启动自动完成监听器
- java - 在 Jackson/spring/Java 中忽略 RootNode 和自定义映射
- jquery - 是否可以使用外部加载的 jQuery 脚本更改 CSS?
- node.js - 为生产 Node.JS 配置环境变量
- java - 如何在 Java 中获取 akka 的演员姓名?
- c# - 无法删除和更新 JSON 字符串 C#