Powershell Windows下的Zabbix Userparameter在本地工作,但不从Zabbix服务器工作

Powershell Windows下的Zabbix Userparameter在本地工作,但不从Zabbix服务器工作,powershell,cmd,zabbix,Powershell,Cmd,Zabbix,我已将此Userparameter添加到Windows主机上的配置中: UserParameter=backups.db-zip, powershell.exe -NoProfile -ExecutionPolicy Bypass -Command {Get-ChildItem C: | ForEach-Object{((Get-Date)-$_.LastWriteTime).ToString('dd')}} 当我从powershell或cmd本地运行它时,它会工作。当我通过Zabbix代理运

我已将此Userparameter添加到Windows主机上的配置中:

UserParameter=backups.db-zip, powershell.exe -NoProfile -ExecutionPolicy Bypass -Command {Get-ChildItem C: | ForEach-Object{((Get-Date)-$_.LastWriteTime).ToString('dd')}}
当我从powershell或cmd本地运行它时,它会工作。当我通过Zabbix代理运行它时,它会抛出一个错误,如“找不到每个对象的命令”


我错过了什么?

你有没有试过逃离垂直线
…m C:^ |对于…
在我对您上一个问题的回答中,我提供的两个答案中没有任何关于每个对象的
。但是,在本例中,我建议您的-命令用双引号括起来。我在回答您之前的问题时也提到,您不需要触碰
-Command
s的执行策略。只有在运行powershell脚本时才真正需要它,
-file
s。嘿,Compo,谢谢。我认为ForEach对象不是我的问题。两个版本都在Zabbix中抛出错误,但在本地工作(有或没有ForEach对象)。我想这一定是和Zabbix探员有关的事情。@lit我试图逃避它。它也不起作用。“意外令牌^…”。奇怪的是,我有其他powershell参数,它们工作正常。除了在这个循环中有一个for循环之外,没有明显的区别。