cmdlets相关内容
我正在学习一些 PowerShell.是否可以查看内置 cmdlet 的源代码,例如 Get-ChildItem? 解决方案 Powershell 的源代码现已在 Github 上提供. Get-ChildItem 的来源可以在 此处.
..
我有一个支持 -WhatIf 的 PowerShell 脚本 cmdlet &-确认 参数. 它通过在执行更改之前调用 $PSCmdlet.ShouldProcess() 方法来实现这一点. 这按预期工作. 我遇到的问题是我的 Cmdlet 是通过调用其他 Cmdlet 实现的,并且 -WhatIf 或 -Confirm 参数没有传递给我调用的 Cmdlet. 如何将 -Wha
..
试图弄清楚如何将多种服务检查转换为HTML: 我有这个脚本: 获取服务-计算机名SERVER1-名称* SERVICE1 * |ConvertTo-Html -Body“
服务1检查
"-属性名称,状态获取服务-计算机名SERVER2-名称* SERVICE2 * |ConvertTo-Html -Body“
服务2检查
"-属性名称,状态|文件外
..
我正在从Visual Studio创建PowerShell cmdlet,但找不到如何从C#文件中调用cmdlet,或者甚至可以这样做吗?我可以一一运行我的cmdlet没问题,但是我想设置一个cmdlet来在续集中运行多个cmdlet. 解决方案 是的,您可以从C#代码中调用cmdlet. 您将需要以下两个名称空间: 使用System.Management.Automation;使
..
我需要使用.NET中的CmdLets组合多个Power Shell脚本的输出,以管道输出的形式给出. 例如: Command-GetA -combine Command-GetB |命令获取 所以我想通过管道将 GetA 和 GetB 的输出发送到 GetD .是否有使用Powershell脚本或.NET cmdlet做到这一点的紧凑方法?除了将输出存储在数组中然后将其传递到管道之外
..
模块清单:cmdlet和功能. cmdlet和函数有什么区别? 解决方案 cmdlet是用C#或其他.NET语言编写的.NET类,并包含在.dll(即二进制模块)中.在PowerShell中的脚本,脚本模块或命令行中直接指定功能.模块清单可能同时包含脚本和二进制模块,因此清单需要能够导出cmdlet和函数.尽管通常不建议从单个清单中导出同一个cmdlet和一个具有相同名称的函数,甚至
..
是否可以构建包含实体框架(Core或EF6)的PowerShell cmdlet来访问SQL Server数据库? 我一直在编写cmdlet C#已经好几年了,但是由于似乎是程序集版本冲突,我在最近的coupla日子里经历了一场噩梦,试图在项目中使用Entity Framework。 Project具有三个库: MyProject.Commands.dll -要加载的cmdlet
..
注意:对于此问题,当我提到“ Windows驱动程序”时,是指.inf和相关文件,否则可以通过右键单击.inf并在Windows资源管理器中单击“安装”来安装。我并不是说有任何setup.exe样式的可执行文件都可以安装驱动程序。 那里存在以下内容: Get-WindowsDriver -online -Powershell Cmdlet,可输出当前安装的正在运行的系统的驱动程序 A
..
我对Powershell很陌生。我有2种正在运行的脚本,我想将它们组合成一个脚本。 脚本1有1行 Stop-Process -ProcessName alcore。* -force 其目的是结束任何以“ alcore”开头的过程。 脚本2也有1行 启动服务-displayname crk * 启动任何以crk开头的服务。
..
我正在尝试执行一些简单的if语句,但是所有基于[Microsoft.Management.Infrastructure.CimInstance]的较新cmdlet似乎都没有公开.count方法? $Disks = Get-Disk $Disks.Count 不返回任何内容.我发现可以将其强制转换为[array],这使其按预期返回.NET .count方法. [Array]$Disk
..
一些背景:我在实验室环境中工作,遇到许多问题,这些问题需要创建VHD并将其附加到VM进行压力测试.我想出了一个脚本,该脚本使用户可以使过程尽可能简单,如下所示: $vms=Get-VM $val = 0 Write-Host "This script is set up for quickly creating and initilizing VHDs" $Path = Read-Host
..
我需要通过cmdlet代码找到已安装的Azure PowerShell版本.如何找到Azure PowerShell版本? 注意:除cmdlet代码外,也欢迎使用. 解决方案 使用: (Get-Module azure).Version 这将返回已安装的Azure PowerShell的版本.
..
如果您发现这是一个非常la脚的问题,请原谅,但是由于我正在学习Powershell,因此我需要提出疑问。 这是本书的下一部分发布问题并在此处收到答案。 我有一个自定义名为Get-DirectoryListing的cmdlet,我添加了别名“ gdl”(在.psm1文件中使用New-Alias命令)。因此,用户可以使用Get-DirectoryListing或gdl触发同一命令。现在,我
..
我正在为我的应用程序编写自定义Powershell cmdlet,我需要为某些cmdlet提供别名。因此,假设我有cmdlet Get-DirectoryListing,并且想向此cmdlet中添加Alias(例如“ gdl”)。我该怎么做? AliasAttribute在这里不起作用,因为它仅适用于属性,索引器或字段声明。我也知道我们可以使用Set-Alias命令,但是不知道将它放在哪里。
..
我正在编写PowerShell脚本,它的其中一部分应将新用户添加到Active Directory。 我正在使用 New-ADUser cmdlet,我想将任何错误(如果会产生任何错误)重定向到文件。 所以我写 New-ADUser -smth -smth 2>> ./log.txt 但是它只会创建一个空白的 log.txt 文件,当我模拟错误时。 我怎么了?
..
默认情况下,具有[CmdletBinding()]属性的任何命名函数都接受-debug和-verbose(以及其他一些参数)参数,并具有预定义的$debug和$verbose变量.我试图弄清楚如何将它们传递给在函数中被调用的其他cmdlet. 假设我有一个这样的cmdlet: function DoStuff() { [CmdletBinding()] PROCESS {
..
我正在查看Rename-Item的文档,并且有一个这样的示例. PS C:\>Get-ChildItem *.txt | Rename-Item -NewName { $_.name -Replace '\.txt','.log' } 此示例显示如何使用“替换"运算符重命名多个 文件,即使NewName参数不接受通配符 字符. 此命令将当前目录中的所有.txt文件重命名为 .log
..
我能够导入AzureAD模块并能够使用C#中的Connect-AzureAD PowerShell cmdlet连接AzureAD. 我要列出用户时,只需使用Get-AzureADUser即可获得所有用户. 但是当我想使用Get-AzureADUser -SearchString 'user@domain.com'列出特定用户时,我无法列出. 尝试过一次: Runs
..
我使用PAL工具( https://pal.codeplex.com/ )生成来自Windows中的perfmon日志的HTML报告。在PAL处理来自perfmon的.blg文件后,它将信息转储到包含有关系统如何执行的各种数据点的表的HTML文档中。我目前正在编写一个脚本,它查看所有HTML文件的目录内容,并对所有HTML文件执行get-content。 我想做的是为具有不同行数的特定表格刮
..
假设我有一个自定义的PowerShell Cmdlet,它导出数据并使用密码加密它。 [Cmdlet(VerbsData.Export ,“SampleData”)] public class ExportSampleData:PSCmdlet { [Parameter(Mandatory = true)] public string Password { get;
..