问题标签 [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.
powershell - 如何让我的函数运行计算机名称的自定义对象?
我是 Powershell 的新手,我想为 $computerName 中的所有计算机运行我的自定义对象 $info 中的所有内容,以便获取它们的信息。在这段代码中,我将它们命名为 A、B、C 以供一般参考。我尝试实现一个 foreach 循环来写入 $info 的主机,以便它完成任务,但它不起作用。我也尝试只为 CustomObjects 运行 $info.OSInfo,但是当我在 VS Code 中运行文件时没有任何反应。感谢您的帮助。
powershell - 如何将对象转换为字符串?
我想分配当前目录的名称来构造并行目录的路径(运行一些 diff 命令)。
但是,当我这样做时:
我明白了
x@{Name=my_test_dir}x
而不是我所期望的:
xmy_test_dirx
那么,我如何“拆箱”目录的名称呢?
PS - 为了便于测试,我使用:
powershell-core - 便携式 powershell,最小捆绑
存档**中需要哪些文件pwsh.exe
才能正常运行?
以便可以按需包含其余部分(例如 xml 的模块)。特别是考虑到存档包含特定于 Windows 的模块。
powershell - powershell 7中的ssl证书验证
所以问题不是关于powershell,而是如何管理这个问题:下面是一个脚本(从我们用来管理我们的F5负载均衡器的脚本中提取的部分)
如果您使用 powershell 5.1 运行但在 powershell 7.0.1 中失败并出现以下错误,则此方法有效
f5 确实有一个不受信任的证书 - 我正在寻求解决这个问题,但我正在使用 TunableSslValidator 并且我在那里有那个证书验证块,因为我们在 powershell 5 中也有问题,但我们信任这个内部资源,我愿意忽略证书问题。
有没有办法在powershell 7中绕过这个?
powershell - 在 Powershell 中,如何正确使用 Get-CimInstance 来检索相应计算机的 IPV6 地址?
我试过这个,
还有这个,
但似乎没有什么对我有用 Get-CimInstance 正确获取 IPV6 地址。我只是得到与参数相关的错误。
powershell - PS7.1 - 你如何使用带有自定义函数的流水线链接?
根据文档,PS 7 引入了流水线链接操作符,例如||
和&&
.
https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_pipeline_chain_operators?view=powershell-7
您应该能够执行 C# 风格的短路操作,例如:
Write-Error 'Bad' && Write-Output 'Second'
上面的例子有效。并且文档说管道链接操作员使用两个字段(不确定它是如何精确工作的):$?
和$LASTEXITCODE
我如何将这些应用到我自己的函数中?
例如:
我觉得我应该能够运行以下命令no && yes
并看到以下输出
叫不
错误的
但相反,我看到
叫不
错误的
叫是
真的
那么,我如何以可以使用流水线链接和短路的方式开发功能呢?
&&
编辑:我现在能想出的唯一方法是构造一个自定义函数来使an 短路throw
,但这在一般情况下似乎不太有用。
regex - Powershell 5.1 和 7.0 用于日志记录和正则表达式过滤的区别
为什么这个脚本会从 Powershell v5.1 到 v7.0 返回不同的结果
如果我将其剥离为仅将字符串管道传输到提取代码,则它可以工作:
rhel7 - 在 Linux 上的 PowerShell 中读取或写入历史文件时出错
我刚刚在运行 RHEL 7.x (maipo) 的 2 个机器上安装了 PS 7.0.2。奇怪的是,其中一个显示以下错误
我不知道为什么。我所做的只是下载 RPM 并安装它。两个盒子实际上是彼此的副本:(
有什么建议么?
powershell - 为什么 VS Code PowerShell 终端映射新驱动器?
我在 Visual Studio Code 中制作了一个使用 command 的 PowerShell 脚本,Get-PSDrive
令我惊讶的是,在使用 VS Code 时,似乎出现了一个与我的C:\
驱动器相同的新驱动器Temp
。
据我所知,这个结果让我大吃一惊,除了我的主C:\
驱动器外,我只连接了 2 个其他驱动器。我试图在其他终端上复制它但没有成功,除了 PowerShell 7:
当我看到它被 PwSh 7 复制时,我决定使用$host
变量检查每个 PowerShell 的版本,我看到了更意想不到的东西:
Windows 终端 PowerShell 5.1
PowerShell 5.1
PowerShell 5.1 (86x)
PowerShell 7 (86x)
Windows 终端 PowerShell 7
这一切看起来都很正常,但是当我检查 VSCode 时$host
,我得到了结果
是什么导致输出的差异
在 PwSh 7、PowerShell 5.1 和 VS Code PwSh 之间?
powershell-core - 函数不导出。Linux 上的 PowerShell 7.0.2
TL;博士
在 Linux (Fedora 32) 上运行 PowerShell 7.0.2,模块加载,但没有导出任何函数。
细节
我在 Linux 上编写了一个非常基本的测试模块,它不会导出任何功能。我已经在 Windows PowerShell 上尝试过了,它确实有效。我错过了什么?
在 Windows 上,.psd1 文件的位置无关紧要,我希望这同样适用于 Linux,但要确保模块位于 $env:PSModulePath:
/home/john/ 中列出的路径之一中。 local/share/powershell/Modules/testmodule/testmodule.psd1`
我曾经New-ModuleManifest
创建psd1
文件:
并完成其余部分,RootModule
即CompatiblePSEditions
和FunctionsToExport
:
我还创建了以下非常基本的testmodule.psm1
文件:
运行时Import-Module
,不导出任何函数:
并尝试使用 Get-Command 列出 cmdlet,但什么也不返回:
有趣的是,我可以用制表符完成模块名称,但是,Get-Module -ListAvailable
不会返回对testmodule
.
从 PowerShell Gallery 安装的模块可以Az
正常工作,所以我一定是做错了什么。我以为是CompatiblePSEditions
,但添加core
没有任何区别。
如果有人能指出我正确的方向,我将不胜感激。
TIA