微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Rundeck + powershell 内联脚本问题

如何解决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 举报,一经查实,本站将立刻删除。