如何解决Rundeck + powershell 内联脚本问题
我是 rundeck 的新手,我正在努力让它在我的环境中工作。
- Rundeck 服务器在 Ubuntu 服务器上。
- 远程节点是 Windows Server。
所有 winrm https / kerberos 部分都已完成并且似乎可以正常工作。
我使用内联脚本步骤完成了一项工作,该步骤将 AD 中的数据导出到 csv 文件中。
问题是 rundeck 在脚本中删除了 @caracter 因此它不起作用。
源定义:
Get-ADUser -SearchBase "OU=...,DC=com" -Filter {mail -like "*@xxxx.com"} | select @{Name="NOM";Expression={$_.Surname}},@{Name="PRENOM";Expression={$_.Givenname}},@{Name="SERVICE";Expression={$_.wWWHomePage}},@{Name="BATIMENT";Expression={$_.wWWHomePage}},@{Name="EMAIL";Expression={$_.UserPrincipalName}},@{Name="TELEPHONE";Expression={$_.wWWHomePage}} | sort Nom | ConvertTo-Csv -NoTypeinformation | % { $_ -replace '"',""} | Out-File "D:\Data\OUT\Export.csv"
在远程节点上:
Get-ADUser -SearchBase "OU=...,DC=com" -Filter {mail -like "*@xxxx.com"} | select {Name="PRENOM";Expression={$_.Givenname}},{Name="BATIMENT";Expression={$_.wWWHomePage}},{Name="TELEPHONE";Expression={$_.wWWHomePage}} | sort Nom | ConvertTo-Csv -NoTypeinformation | % { $_ -replace '"',""} | Out-File "D:\Data\OUT\Export.csv"
如何防止这种情况发生?
谢谢。
解决方法
查看文档,您需要使用 @@
来转义 @
。查看 this 并找到“Escaping Replacement Token”部分。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。