问题标签 [cmdlet]
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 - 如何启用“Get-VM”Cmdlet?
是Get-VM
本机 PowerShell cmdlet?我Get-Command
在 PS 中使用过,但找不到 cmdlet Get-VM
。
此 cmdlet 是否特定于 VMware?我是否缺少一些 PowerShell 命令来获取这些隐藏的 cmdlet?
powershell - 将powershell变量内联扩展为cmdlet参数?
调用 cmdlet 时,是否可以以某种方式扩展 powershell 变量的值,使其充当 cmdlet 的参数(具有相关值)?
这是我正在尝试的示例:
Invoke-Sqlcmd 运行时出现问题。它告诉我找不到接受“-Username my username
-Password my password
”的位置参数,因此它正在扩展变量,但没有正确地将其作为一组参数发送。有没有办法做我在这里尝试的事情?
powershell - 可能停止服务 cmdlet 超时?
我们正在使用 stop-service cmdlet 来终止我们机器上的一些服务。大多数情况下它运行良好,但是我们有一两个服务(谁没有?)偶尔表现不佳。
在这种情况下,有问题的服务之一将保持停止状态,并且 cmdlet 一遍又一遍地将其输出到控制台:
最终我们必须在任务管理器中终止服务,然后我们的脚本继续。
有没有办法让 stop-service cmdlet 在某个点之后放弃或超时?我想我们可以事后检查,如果服务仍在运行,请使用 kill-process cmdlet 提供最终结果。
powershell - Start-Job 脚本块——如何使用参数调用 cmdlet?
我是 cmdlet 的新手,在Start-Job
调用带有 cmdlet 的脚本块时遇到了问题,该脚本块带有参数。这是我到目前为止所拥有的:
当我运行参数为 null 或空且参数为 null 或空时,receive-job
我看到错误。在任何情况下都不是这样。上面的代码片段是从两个 foreach 循环内部调用的:-ComputerName
-InputObj
我试过-ArgumentList
在调用我的脚本块时使用,但也没有运气。我确定我错过了什么?
c# - 在自定义 C# PowerShell Cmdlet 中识别是否指定了 -Verbose
我有一个自定义 C# PowerShell Cmdlet(继承自 Cmdlet 基类),我希望能够确定在运行 Cmdlet 时是否指定了“-Verbose”参数。我意识到当指定-Verbose 参数时WriteVerbose 会输出,但我想在指定-Verbose 时实际执行一些其他代码(即,当指定-Verbose 时不输出Console.Write 值)。
谢谢,
约翰
powershell - Windows 服务和 Stop-Process cmdlet 的有趣问题
我们这里有一些自制的 Windows 服务。其中一个是有问题的,因为它不会总是在被问到时停止。它有时会卡在“停止”状态。
使用 powershell 我们正在检索其 PID 并使用 Stop-Process cmdlet 来终止相关进程,但这也不起作用。
相反,我们会收到一条名为服务的消息,该服务System.ServiceProcess.ServiceController.Name
显然不是我们的服务,但它引用的 PID 是。
以下是我们为停止服务所做的工作。首先,我们使用 Get-Service cmdlet:
然后,使用该 ServiceNamePID,我们获取 PID 并在 Stop-Process cmdlet 中使用它
那是 Stop-Process cmdlet 大喊大叫的Cannot find a process with the process identifier XYZ
时候,实际上 PID XYZ是服务的正确进程 ID,根据任务管理器。有没有人见过这样的问题?
c# - 从单独的线程更新 cmdlet 进度的最佳方法
我有一个用 C#(源自PSCmdlet
)编写的 powershell cmdlet,它将启动一个长时间运行的任务,该任务应该在WriteProgress()
运行时更新其进度。由于powershell不允许使用单独的线程,WriteObject
或者WriteProgress
我必须在主线程中创建一个Queue<object>
,并且我将要写入管道/进度的任务中的项目添加到队列中。当对象进入并写入管道/进度条时,while 循环将使对象出列。
这是有效的,但我想看看是否有任何更好的多线程实践,使用 C#/VB 编写的 powershell cmdlet。例如,UIComponent.Dispatcher.Invoke()
如果我需要更新进度条或 UI 组件,我总是可以使用 WPF 进入 UI 线程。是否有任何等效的东西可以用来“踏上”powershell 线程以更新 UI 或写入管道?
sql-server - 如何从用 C# 编写的 cmdlet 执行 tsql 脚本
我想从用 c# 编写的自定义 cmdlet 执行 tsql 脚本。你能推荐我最好的做法吗?
我有一些 .sql 脚本,在我的 cmdlet 中,我需要按特定顺序遍历它们并执行每个 sql 脚本。如果可能的话,我还需要在事务中运行所有脚本。
而且我需要远程执行脚本。这意味着,执行 cmdlet 的机器上可能没有安装 sql server。
目标 sql 服务器为 2008、2008R2、2012。
我已经阅读了一些方法,但我仍然不确定什么是最好的。
提前致谢
powershell - .net 项目中的 Azure power shell cmdlet dll
在这里,我有一个关于如何在.net 项目中使用 Azure power shell cmdlet dll 的问题。我在 msdn 中查看了这个线程:使用 powershell cmdlet 我们可以使用这个命令。Remove-AzureVM -ServiceName -Name 这将涉及到 Microsoft.WindowsAzure.Management.ServiceManagement.dll 下的 dll 路径是:C:\Program Files (x86)\Microsoft SDKs\Windows Azure\PowerShell\Azure 我用反射器打开这个dll。而且我可以得到 RemoveAzureVMCommand 类,但是如何使用这个类来实现与 powershell cmdlet 相同的功能呢?有人可以给我分享一些光吗?非常感谢!
c# - 在 C# powershell 运行空间中转义单引号
我正在尝试使用 C# 中的 System.Automation dll 运行 Exchange cmdlet。
在http://technet.microsoft.com/en-us/library/dd315325.aspx中,他们说为了转义单引号,我们基本上需要在它后面加上另一个单引号
例如,
但是,当我尝试用我的 cmdlet 做同样的事情时,
新邮箱实际创建的名称为user.''.cn。我们希望它是 user.'.cn 执行此 cmdlet 的代码如下:
我们能做些什么来正确地逃避它吗?