cmdlets相关内容
默认情况下,任何具有 [CmdletBinding()] 属性的命名函数都接受 -debug 和 -verbose(以及其他一些)参数并具有预定义的$debug 和 $verbose 变量.我想弄清楚如何将它们传递给在函数内调用的其他 cmdlet. 假设我有一个这样的 cmdlet: function DoStuff() {[CmdletBinding()]过程 {新项目测试类型目录}}
..
我正在查看 PowerShell 的 Rename-Item cmdlet 的文档,有一个这样的例子. Get-ChildItem *.txt |Rename-Item -NewName { $_.name -Replace '\.txt','.log' } 这个例子展示了如何使用替换操作符来重命名多个文件,即使 NewName 参数不接受通配符字符. 此命令将当前目录中的所有 .txt
..
我有一个 azure 订阅,我正在尝试编写一个 powershell 脚本来自动获取我订阅中当前拥有的所有资源(VM、存储帐户、数据库等)的列表.有没有办法使用 azure 管理 REST API 或 Azure Cmdlets 来做到这一点? 解决方案 如果您使用的是新的资源管理器模型(2014 年推出),您可以使用以下 PowerShell 脚本. 登录-AzureRmAccount
..
我遇到了这个问题,但找不到任何答案.问题是我试图使用 Azure cdmlets 通过 c# 代码连接到 O365,但我无法获得 connect-msolservice. “当您尝试在 Office 365 中运行管理 Windows PowerShell cmdlet 时出现“无法识别术语"错误" 解决方案 经过数小时的搜索和尝试,我发现在 x64 服务器上必须为 x64 安装 M
..
我遇到了这个问题,但找不到任何答案.问题是我试图使用 Azure cdmlets 通过 c# 代码连接到 O365,但我无法获得 connect-msolservice. “当您尝试在 Office 365 中运行管理 Windows PowerShell cmdlet 时出现“无法识别术语"错误" 解决方案 经过数小时的搜索和尝试,我发现在 x64 服务器上必须为 x64 安装 M
..
我正在尝试执行一些简单的 if 语句,但所有基于 [Microsoft.Management.Infrastructure.CimInstance] 的较新 cmdlet 似乎都没有公开 .count 方法? $Disks = Get-Disk$Disks.Count 不返回任何东西.我发现我可以将其转换为 [array],这使其按预期返回 .NET .count 方法. [Array]$D
..
我有一个 CSV 文件中的字符串列表.格式为: 旧值,新值223134,875621321321,876330.... 并且该文件包含几百行(每个 OldValue 都是唯一的).我需要处理多个文件夹中的多个文本文件的更改 &子文件夹.我对文件夹、文件和文本行数的最佳猜测是 - 15 个文件夹,每个文件夹中大约有 150 个文本文件,每个文件夹中大约有 65,000 行文本(每个文本文件在 4
..
Powershell 版本:5.0.10586.494 我这个周末刚开始使用powershell,发现在使用shell时找不到任何帮助文件,例如,我想阅读about_Comparison_Operators帮助文件,但似乎控制台找不到它. 执行时:Get-Help About_* 我得到的唯一结果是 About_CimSession... 好像没有其他帮助文件? 这篇 TechN
..
我是 Powershell 的新手,我正在使用 Get-Hash cmdlet: 这有效: PS M:\>Get-Hash -Path "C:\Users\medmondson\Desktop\New Folder\database.adp" -Algorithm SHA512 这失败了: PS M:\>Get-Hash -Path "C:\Users\medmondson\Deskt
..
我一直在编写一些将 PowerShell Cmdlets 用于 App-V 的实用程序.有趣的是,Microsoft 似乎只记录 cmdlet,而不记录 Powershell 模块背后使用的 .net 程序集. 现在我熟悉 P/Invoke 和 COM Interop,并且我已经学会了如何使用 System.Management.Automation 创建一个 powershell 会话并调
..
我完全是 Powershell 开发的新手,我正在尝试用 C# 编写一个 Powershell Cmdlet,该 Cmdlet 将用作 REST API 的接口. 我想要某种设置 Cmdlet,其中将提示用户输入 REST API 的 Uri、用户名和密码,然后调用 Get-Item 等 Cmldlet,而无需输入这些参数.与 Powershell 的 Azure 提供程序的工作原理非常相似
..
对于使用命令行开关和 powershell 东西,我真的处于初学者级别.我正在使用 PowerShell API 从 C# 调用命令行开关.我看到了奇怪的行为.虽然在 stackoverfow 的不同线程上,人们使用 Import-Command 或 PSImportModule 方法显式导入模块,但我可以查看 $env:PSModulePath 中是否有可用的程序集,它会自动加载.这种行为是默认
..
如果我找到(或创建)一个新的 PowerShell cmdlet(或函数),我该如何将它添加到我的机器上? 我是否将其复制到特定文件夹? 我是否将其内容放在特定文件中? 我是否需要授权、签署或以某种方式给予许可? 我不想在一个会话中使用它;我希望每当我在这台机器上使用 PowerShell 时它都可用. 解决方案 正如 Alex 所提到的,在您的配置文件或“点缀"到您的配置
..
从概念上介绍 cmdlet, 它们是如何制作的?他们编译了吗? 它是否相当于 PowerShell 的批处理文件?是脚本还是二进制文件? 用于存储这些 cmdlet 的结构是什么? 解决方案 PowerShell cmdlet 是编译后的 .NET 代码片段,如果我没记错的话,更准确地说是单个类.Cmdlet 是 PowerShell 领域中的一种“本机"命令,能够处理对
..
我的目标是向某些用户发送电子邮件,以通知某些文件夹目录中的当前文件数. 我只需要计算扩展名为 .txt 的文件并排除其中的文件夹和文件. 请看下图 U:\TESTING\Main 文件夹 U:\TESTING\Main Folder\Sub Folder 1 U:\TESTING\Main Folder\Sub Folder 2 输出结果应该是这样的 主文
..
我开发了一些自定义 cmdlet,用于向 SharePoint 系统执行不同的导入任务.目前,所有这些 cmdlet 都在单个 PowerShell 脚本中以串行方式运行.我想更改此设置,以便每个 cmdlet 在单独的任务(作业)中执行. 主脚本开始一个新作业,其中 Start-Job 与包含对 cmdlet 调用的单独脚本相关.该脚本启动并执行 cmdlet.我还调试了执行的 cmdle
..
PowerShell 是否可以输出没有 ANSI 控制字符(如颜色控制)的文件,例如[1;xxm 或 [xm],在输出到文件之前, [1;35mStarting selenium server... [0m[1;35mstarted - PID: [0m 22860][0;36m[登录测试] 测试套件[0m[0;35m================================[0m运行:[
..
我有一个 powershell 脚本,它在服务器(测试服务器)上运行并读取他的客户端(DC1)的日志文件. 双方可以互相ping通. 两边都禁用了防火墙. 在 DC1 上启用远程桌面和远程协助. Get-EventLog System -ComputerName test-server -Source Microsoft-Windows-Winlogon # WORKSGet-Ev
..
假设我调用 Get-Service 并希望使用打印递增整数的 cmdlet 输出分配一个新列 ID 以便: ID 状态名称 DisplayName-- ------ ---- -----------0 运行 AdobeARMservice Adobe Acrobat 更新服务1 停止 AeLookupSvc 应用程序体验2 停止 ALG 应用层网关服务 我正在尝试使用 Select-O
..
根据答案像这个和我自己的经验,Powershell可以自动处理-Verbose(和-Debug)的传播,非常方便.但是,当我想要传播详细程度的函数在模块中时,这将停止工作.用于测试的代码: 在某处创建一个名为Mod的目录,假设在c:中,并添加2个文件: 文件 c:\Mod\Functions.ps1: function Show-VerbosityB { [cmdletbinding
..