【问题标题】:Rundeck + powershell inline script issueRundeck + powershell 内联脚本问题
【发布时间】:2021-07-07 07:31:04
【问题描述】:

我是 rundeck 的新手,我正在努力让它在我的环境中工作。

  • Rundeck 服务器位于 Ubuntu 服务器上。
  • 远程节点是 Windows Server。

所有 winrm https / kerberos 部分都已完成并且似乎可以工作。

我使用内联脚本步骤完成了一项工作,该步骤将 AD 中的数据导出到 csv 文件中。

问题是 rundeck 删除了脚本中的 @ 字符,因此它不起作用。

来源定义:

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"

如何预防?

谢谢。

【问题讨论】:

  • 尝试使用\@转义脚本源定义中的文字@

标签: powershell rundeck winrm


【解决方案1】:

查看文档,您需要使用@@ 转义@。查看this 并找到“转义替换令牌”部分。

【讨论】:

    猜你喜欢
    • 2021-01-28
    • 2017-06-14
    • 1970-01-01
    • 2020-05-02
    • 2011-04-19
    • 2020-01-25
    • 1970-01-01
    • 2015-07-07
    • 1970-01-01
    相关资源
    最近更新 更多