问题标签 [invoke-command]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
powershell - 将变量传递给远程导入的 powershell 模块
我正在尝试创建新的 PSSession,在远程机器上导入 ActiveDirectory 模块,然后将 import-pssession 导入我的本地工作站 - 这工作正常。代码如下所示:
现在我可以调用 ActiveDirectory cmdlet,所以例如Get-ADUser -Filter *
可以正常工作。
但
我无法将变量传递给 ActiveDirectory cmdlet,我无法执行以下操作:
它说$name
没有定义。我无法将变量传递给Get-ADUser
.
有什么建议么?
谢谢
windows - 杀死由调用命令启动的远程作业
用后台进程终止调用命令发起的远程作业的简单方法是什么?
我踢了远程 PS 脚本来运行遗留的 exe 文件,并且需要一种方法来终止该进程。
我打算先使用 stop-job,但在我阅读时它仅适用于本地进程。
然后我打算使用 Remove-job -force 命令,但如果我理解正确,它在完成之前无法终止正在运行的进程(我的远程 ps 脚本将再次启动另一个进程来运行 exe 文件)。
我正在阅读我可以使用 wmi terminate 命令杀死一个进程,但我不知道如何获取远程进程的 PID(我不能使用名称,因为我可以杀死其他用户的进程)
实现我的目标的最佳方式是什么?
我的脚本如下所示:
powershell - 使用 PowerShell 启动过程和调用命令远程压缩文件
我希望能够远程进入系统并在那里压缩或解压缩文件,并在完成时获得进程信号。Start-process 使用 -wait 参数从 PowerShell 同步运行 7z.exe。当我尝试将其与 invoke-command 结合以远程运行相同的命令时,它不支持等待参数,我相信它正在杀死进程,因为它快速返回并且从不生成 zip 文件。
我最初尝试了 PSCX write-zip & expand-archive,但后者与 64 位 .NET 4.0 配置不兼容。所以现在我试图通过命令行调用 64 位 7z.exe。我没有收到任何错误。PowerShell 将作业报告为运行状态,然后完成,并且不生成 zip 文件。
感谢任何帮助或指示。
谢谢,格雷戈里
android - 在 Android 程序中运行 Linux 终端命令
我正在开发一个小应用程序,它将我的 android 手机中的目录与我的笔记本电脑的目录同步。我植根了我的手机并在其中安装了 rsync,以便在我的手机和笔记本电脑上同步目录。我手动检查了它,一切似乎都正常(我可以将手机的目录与我的笔记本电脑同步)。现在我想以编程方式执行此操作。我怎样才能做到这一点?有任何想法吗?
wpf - 如何防止 InvokeCommandAction 将事件传播到父元素?
我意识到,当使用与 EventTrigger 关联的 InvokeCommandAcction 时,原始事件仍在路由到父元素,直到它被处理。好吧,我想这是一种预期的行为。但我的问题是如何将事件标记为已处理,以便它不会在整个 UI 树中传播?
实际上,当您在命令中处理此事件时,所有内容都将在此命令中处理,因此不需要传播。在我发现的一个极端情况下,它会导致一些不需要的行为。例如,当用户双击一个元素(MouseDoubleClick 事件)时,我会打开一个新窗口。问题是新窗口打开,然后主窗口回到新窗口的前面,因为 MouseDoubleClick 事件刚刚到达 UI 树中的顶部元素。想要的行为是将新窗口保持在前面,但随着 InvokeCommandAction 让事件向上传播,主窗口收回焦点......
我可以做的是改用 CallMethodAction 资产,但由于我处于 MVVM 场景中,我不想在我的代码中使用 UI 事件参数。即使这会让我隐含地将事件标记为已处理并解决问题。
powershell - 如何在使用局部变量作为参数的远程机器上执行脚本块
我想运行一个从远程机器传递参数的应用程序。通过在本地运行远程计算机,我可以在远程计算机上执行以下操作:
我在远程运行它时遇到问题:
从我读过的内容来看,这与变量范围有关,补救措施是在将脚本块传递给远程机器之前创建脚本块,使用:
我尝试了很多组合,但我无法让它运行。
windows - 使用 Powershell 的 Invoke-Command 调用带有参数的批处理文件
我想使用 Powershell 来调用远程机器上的批处理文件。这个批处理文件有参数。这是我到目前为止所拥有的:
经过一番搜索,我发现 Invoke-Command 函数在一个全新的进程中运行其脚本块,因此您不能将变量放入其中(它们不会被扩展)。这就是 -ArgumentList 标签的用途。所以我尝试了这个...
那也不起作用......我的批处理脚本告诉我它没有被传递任何参数。我找不到任何明确说明的内容,但看起来 -ArgumentList 参数仅适用于 Powershell 脚本(它不会将它们提供给批处理脚本)。
有什么想法可以使用 Invoke-Command 调用带有参数的批处理文件吗?
powershell - 如何捕获使用 Powershell 的 Invoke-Command 调用的 ScriptBlock 的返回值
我的问题与这个问题非常相似,除了我试图使用 Invoke-Command 捕获 ScriptBlock 的返回代码(所以我不能使用 -FilePath 选项)。这是我的代码:
问题是 Invoke-Command 没有捕获 script.cmd 的返回码,所以我无法知道它是否失败。我需要能够知道 script.cmd 是否失败。
我也尝试使用 New-PSSession(它可以让我在远程服务器上看到 script.cmd 的返回代码),但我找不到任何方法将其传递回我的调用 Powershell 脚本以实际对失败执行任何操作。
powershell - powershell:用参数启动程序的脚本?
当我在下面运行 Powershell 脚本时,我收到以下错误。如何通过带有参数的powershell运行程序?该脚本将是一个组策略登录。
调用表达式:找不到接受参数 '\TBHSERVER\NETLOGON\BGInfo\BGIFILE.bgi /timer:0 /s ilent /nolicprompt '的位置参数。在 X:\Systems\scripts\PowerShell\UpdateDesktopWithBGInfo.ps1:6 char:18 + Invoke-Expression <<<< $logonpath $ArguList + CategoryInfo : InvalidArgument: (:) [Invoke-Expression], ParameterBindingException + FullyQualifiedErrorId : PositionalParameterNotFound, Microsoft.PowerShell.Commands.InvokeExpressionCommand
powershell - Powershell Remote Invoke-Command Start-Process App 启动后立即关闭
我正在编写一个脚本来远程杀死两个进程,删除一些文件夹,并将服务作为应用程序启动。最终这将被部署为在多台服务器上运行,但我目前正在对一台服务器进行测试。一切都很好,除了最后一步是启动远程服务(由于它作为服务运行的一些兼容性问题,它使用 -cl 参数作为应用程序运行)。应用程序通过脚本启动,但在脚本进入下一步时立即关闭。我是一个完全的菜鸟,所以我一直在挖掘很多,但没有找到解决方案的运气。似乎我最终可能不得不在新的运行空间中启动该过程,但我也没有找到一个好的新手指南来做这件事。
此外,当本地化并在机器上运行时,脚本的执行方式也与它应有的一样。
这就是我所拥有的