我有一个Powershell脚本,该脚本使用Get-Content cmdlet从文本文件的内容填充变量$Users
。 然后,我想使用Out-File将此信息附加到其他文本文件的末尾。 但是,当前输出全部追加在一行中。 我需要的是让每个字符串都在它自己的行上。
我尝试将变量管道连接到 Write-Output
cmdlet 中,它正确显示在屏幕上,但是当我将其从Write-Output
重定向回 Out-File
cmdlet 时,它会再次将所有信息附加到一行中。
$Users = Get-Content "C:UsersXXXXDesktopPassword ResetUsers5.txt"<br>
Out-File -InputObject $Users -FilePath "C:UsersXXXXDesktopPassword ResetRefUsers.txt"
如果是我,我会用烟斗Add-Content
$Users = Get-Content -Path "C:UsersXXXXDesktopPassword ResetUsers5.txt"
$Users | Add-Content -Path "C:UsersXXXXDesktopPassword ResetRefUsers.txt"
注意编码。 我相信Add-Content
默认使用 ascii。此外,如果您没有对数据执行任何操作,则可以一起跳过变量。
GC "C:UsersXXXXDesktopPassword ResetUsers5.txt" |
AC "C:UsersXXXXDesktopPassword ResetRefUsers.txt"
Gc 是 Get-Content
的别名,Ac 是 Add-Content
的别名
以下是我的最终脚本结果:
$Users = 获取内容 "C:\用户\XXXX\桌面\密码重置\用户5.txt"
Foreach($U in $Users){
添加内容 "C:\Users\XXXX\Desktop\Password Reset\RefUsers1.txt" "'n$U"
}
谢谢马特!