问题标签 [powershell-7.0]

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.

0 投票
1 回答
3159 浏览

powershell - 无法验证参数“用户名”的参数。参数为 null 或空。提供一个不为 null 或空的参数

我正在尝试使用 Powershell 7-Preview 执行 Powershell 脚本(7.0)文件,该文件遍历所有数据库并在所有数据库中执行 SQL Server 脚本。

该脚本正确获取所有数据库,但是,当 Parallel 块执行时,我收到此错误(有关详细信息,请参阅下面的屏幕截图)。

无法验证参数“用户名”的参数。参数为 null 或空。提供一个不为 null 或空的参数,然后重试该命令。

命令 - C:\GitHub\TempApp\CompanyTemplate\bin\debug\DeploymentScripts\PowerShell\DeployCompanyDatabases.ps1

错误: 我一个

0 投票
1 回答
41 浏览

powershell - Powershell循环每个文件名只运行一次文件,即使文件名存在多个扩展名

我将是第一个承认 PowerShell 不是我的强项的人,但是在互联网上挖掘了一晚上之后,我拼凑了以下内容。最终目标是通过 DateTaken 组织大量的图像驱动器,以及如果存在的 sidecar XMP 文件。它可能不是最优雅的代码,但它几乎可以工作。

最后一个我想不通的问题是,无论扩展名如何,foreach 循环每个文件名只执行一次。例如,只会处理 DSC00001.arw、DSC00001.xmpDSC00001.jpg。

任何正确方向的观点将不胜感激。

谢谢!

0 投票
1 回答
552 浏览

powershell - 无法将“System.String”类型的“/Action:”值转换为“System.Management.Automation.ScriptBlock”类型

我在尝试执行以下 power-shell (7.0) 脚本时遇到此错误。此脚本使用 dacpac 文件和 SqlPackage.exe 更新所有数据库。

我是 powershell 脚本的新手。看起来问题似乎与传递参数的方式有关,所以我只是将 {} 放在参数周围,因为我收到 $using:SqlPackagePath 参数的另一个错误,但这似乎不起作用

无法将“System.String”类型的“somepath”值转换为“System.Management.Automation.ScriptBlock”类型。

0 投票
1 回答
1296 浏览

azure - 如何在运行 Linux 的 Azure 应用服务上运行 PowerShell 脚本?

使用 SSH 远程访问应用服务我收到以下消息:

在此处输入图像描述

微软的新 PowerShell Core 似乎没有安装在 Azure 的 Linux 容器上。

我在哪里定义我希望 PowerShell 安装在我的 Linux 部署中?

我们在 Azure DevOps CI 中定义ubuntu-latest为我们的。vmImage

0 投票
1 回答
181 浏览

arrays - 查找 ArrayList 成员和 (Get-Process).id vs (1,2,3).ToString()

让我们看看下面的代码:

我想我明白它是如何工作的。但是,当我用 ArrayList 替换 Random 对象时:

[问题 1] Get-Member 调用产生错误:“您必须为 Get-Member cmdlet 指定对象”。什么?$a 不是对象吗?“$a.gettype()” 说是。

[问题 2] 我知道 ArrayList 可以容纳其他对象,但是如何获取 ArrayList 本身的成员,例如我从文档中找到的 add()、clear() 等?ISE 也认识成员。

让我们看看以下两个类似的构造:

【问题3】$p是一个[过程对象]数组,然而Get-Member不显示数组本身的成员,而是数组持有的对象的成员,这样有意义吗?

【问题4】数组$p没有成员“id”,但是$p.id对数组的每个元素进行操作,生成@($p[0].id, $p[1]的列表。 ID, ...)。让我们接受这就是它在 Powweshell 中的工作方式,然后同样适用于数组 $L,但是,$L.ToString() 会产生文字字符串“System.Object[]”,即 15 个字符!$L.ToString()[2] 是“s”!为什么没有一致性?

[编辑] 问题 4 使用了一个不好的例子,因为 ToString() 是数组和数字元素的方法。数组上的 ToString() 方法是返回对象类型“System.Object[]”。一个更好的例子是:

它显示了对列表的操作,当不是列表操作时,对元素进行操作(展开),然后重新回滚到列表。看来Powershell是务实的,但至少是一致的。

0 投票
1 回答
2331 浏览

powershell - 将变量传递给 Foreach-Object PowerShell 7

我想要的是:

我有一个脚本,它将 CAB 文件复制到一百多个服务器,并在它们上使用它。这个脚本运行了一个多星期。当我了解 Foreach-Object -parallel 功能时,我认为这会大大加快脚本的速度。但是我遇到了一个问题。由于我不是很了解 PowerShell,而且我在任何地方都没有找到有关此问题的帖子,所以我想,我要试试运气并在这里问:

预期和实际结果

我想将一个变量传递给 foreach-object cmdlet 中已执行的脚本块,如下所示:

我的期望:

我得到什么:

ForEach-Object:无法使用指定的命名参数解析参数集。发出的一个或多个参数不能一起使用或提供的参数数量不足。

我究竟做错了什么?

这可能是一个微不足道的问题。但是因为我什么地方都没有,也没有找到任何帖子/代码示例。我把它贴在这里。我很感谢你的回答。

0 投票
0 回答
52 浏览

powershell - PowerShell中的重复行为

我只是在玩哈希表,我这样做了:

我最终发现我可以做: ($C.color.y).Get(1)或者($C.color.y).Item(1)它做的事情完全一样。

我还发现,即使自动完成功能没有显示您可以这样做,您也可以:

和方法似乎可以互换GetItem它们之间有什么区别?我确实检查了它们相同的哈希码。

($C.color.y).Get(1).GetHashCode()或者($C.color.y).Item(1).GetHashCode()

0 投票
0 回答
88 浏览

windows - powershell 7中的向上箭头历史匹配

我想在 powershell 7 中获得历史匹配,例如:当我键入npm 和箭头键时,它会显示我最后一个以关键字(例如:)up开头的命令。npmnpm run build

我能够在 powershell 5 here中实现这一点。但这在 7 中不起作用。当我运行讨论的命令时:

我收到如下错误:

0 投票
0 回答
331 浏览

powershell - 使用 foreach-object -parallel 运行 Pester 测试时出错

我有这个基础设施纠缠测试。用于演示目的的代码:

这工作正常。如果我将 $sessions|foreach-object 替换为 $sessions|foreach-object -Parallel,我会收到此错误 -

由于有数百台服务器,请在此处建议如何实现并行性。

已解决-我通过使用作业找到了一种解决方法,它达到了目的。

0 投票
0 回答
104 浏览

powershell-7.0 - 将 SSL 证书绑定到我的站点在管理员模式下的 powershell ise 中有效,但在管理员模式下的 PowerShell 7 中无效

我正在尝试将 SSL 证书绑定到我的站点。如果我在管理员模式下从 PowerShell ise 运行脚本,它可以正常工作,但是当我在管理员模式下从 PowerShell 7 运行时,它不会将证书绑定到站点。我在我的脚本中使用以下部分: