Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sharepoint&;PowerShell-StringBuilder。替换_Powershell_Sharepoint 2010_Stringbuilder - Fatal编程技术网

Sharepoint&;PowerShell-StringBuilder。替换

Sharepoint&;PowerShell-StringBuilder。替换,powershell,sharepoint-2010,stringbuilder,Powershell,Sharepoint 2010,Stringbuilder,我正在使用PowerShell脚本中的StringBuilder.Replace在输出到日志文件之前去除文本字段中的换行符。下面是我正在使用的示例。。。而且它在我们的开发环境中非常有效。但是,在实时环境中,根本不会删除换行符。有人知道是什么原因导致环境不同吗?live服务器上有更多的内容,但由于实际系统与开发人员相同,因此所有文本字段本身都是相同的 $log = "C:\mylogfile.csv" $newline = [System.Environment]::NewLine $sb2

我正在使用PowerShell脚本中的StringBuilder.Replace在输出到日志文件之前去除文本字段中的换行符。下面是我正在使用的示例。。。而且它在我们的开发环境中非常有效。但是,在实时环境中,根本不会删除换行符。有人知道是什么原因导致环境不同吗?live服务器上有更多的内容,但由于实际系统与开发人员相同,因此所有文本字段本身都是相同的

$log = "C:\mylogfile.csv"   
$newline = [System.Environment]::NewLine
$sb2 = New-Object System.Text.StringBuilder 
$sb2.Append("Text fields")
$sb2.Replace($newline,".")
$sb2.ToString() | Out-File $log -Append

好的,我在这里发布后很快就找到了一个解决方案

以下内容适合我。我曾尝试过“r”和“n”,但运气不佳,但通过将这两个词与换行符一起使用,现在所有换行符都被删除了:

$log = "C:\mylogfile.csv"       
$newline = [System.Environment]::NewLine
$charsToStrip = "`r","`n", $newline
$sb2 = New-Object System.Text.StringBuilder 
$sb2.Append("Text fields")
foreach ($char in $charsToStrip)
{
  $sb2.Replace($char,".")
}
$sb2.ToString() | Out-File $log -Append