问题标签 [powershell]

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 投票
2 回答
25085 浏览

powershell - Powershell 的 Copy-Item 的 -container 参数是什么意思?

我正在为 MS PowerShell 编写脚本。该脚本使用该Copy-Item命令。此命令的可选参数之一是“ -container”。该参数的文档指出,指定此参数“在复制操作期间保留容器对象”。

这一切都很好,因为我将是最后一个在复制操作期间想要未保存的容器对象的人。但说真的,这个论点有什么用呢?特别是在我将磁盘目录树从一个地方复制到另一个地方的情况下,这对Copy-Item命令的行为有什么影响?

0 投票
26 回答
27899 浏览

powershell - What’s in your PowerShell `profile.ps1` file?

What essential things (functions, aliases, start up scripts) do you have in your profile?

0 投票
2 回答
7281 浏览

winapi - 如何使用 P/Invoke 在 PowerShell 1.0 中调用 Win32 函数?

在许多情况下,从 PowerShell 脚本调用 Win32 函数或其他一些 DLL 会很有用。给定以下函数签名:

我听说在 PowerShell CTP 2 中有一些东西可以让这更容易,但我很好奇如何在 PowerShell 1.0 中最好地做到这一点。需要调用的函数 使用指针这一事实可能会影响解决方案(但我真的不知道)。

所以问题是编写一个可以调用上面导出的 Win32 函数的 PowerShell 脚本的最佳方法是什么?

请记住 PowerShell 1.0。

0 投票
4 回答
8056 浏览

powershell - 用于下载文件的 Powershell 脚本,无法设置安全连接

我正在制作一个自动脚本来从发布最新编译代码的站点中读取列表。这是我已经弄清楚的部分。脚本的下一部分是从具有 Untrusted Cert 的服务器中获取编译后的代码。

这就是我要获取文件的方式:

然后我收到以下错误:

使用“2”参数调用“DownloadFile”的异常:“底层连接已关闭:无法为 SSL/TLS 安全通道建立信任关系。”

我知道我遗漏了一些东西,但我无法找到正确的方法来搜索它。

0 投票
3 回答
29262 浏览

powershell - PowerShell 函数返回行为

我在 PowerShell 中看到了一些相当奇怪的行为,看起来自定义函数可能需要一个“括号包装器”来评估,如您所期望的那样。给定一个简单的 PowerShell 函数:

然后是一些示例代码来调用它:

想法?评论?

0 投票
7 回答
23231 浏览

powershell - 等待用户输入超时

我已经搜索过,但显然我的 google foo 很弱。我需要的是一种在控制台中提示用户输入并在一段时间后使请求超时并在没有输入时继续执行脚本的方法。据我所知,Read-Host 不提供此功能功能。$host.UI.PromptForChoice() 和 $host.UI.RawUI.ReadKey() 也没有。在此先感谢您的任何指点。

编辑:非常感谢 Lars Truijens 找到了答案。我把他指出的代码封装成一个函数。请注意,我实现它的方式意味着在用户按下键和脚本继续执行之间可能会有长达一秒的延迟。

0 投票
5 回答
2517 浏览

c# - 自定义 PowerShell 提示 - 相当于 CMD 的 $M$P$_$+$G?

我已经开始“玩弄” PowerShell,并试图让它“表现”。

我想做的一件事是将 PROMPT 自定义为与 MS-Dos 上的 "$M$P$_$+$G" 所做的“相似”:

这些功能的快速概述:

性格| 说明
$m 与当前驱动器号关联的远程名称,如果当前驱动器不是网络驱动器,则为空字符串。
$p 当前驱动器和路径
$_ ENTER-LINEFEED
$+ 零个或多个加号 (+) 字符取决于推送目录堆栈的深度,每个推送的级别一个字符
$g >(大于号)

所以最终的输出是这样的:

我已经能够将$Mand$_功能(和一个漂亮的历史功能)添加到我的提示中,如下所示:

但其余的还不是我设法复制的东西......

非常感谢您肯定会提供的提示!

0 投票
6 回答
6901 浏览

c# - 在 PowerShell 中,如何确定当前驱动器是否为网络驱动器?

我需要从 Powershell 中知道当前驱动器是否是映射驱动器。

不幸的是,Get-PSDrive 没有“按预期”工作:

但是在 MS-Dos “net use” 中显示 H: 实际上是一个映射的网络驱动器:

我想要做的是获取驱动器的根并在提示符中显示它(请参阅:自定义 PowerShell 提示符 - 相当于 CMD 的 $M$P$_$+$G?

0 投票
4 回答
3707 浏览

powershell - 在 PowerShell 中,如何确定驱动器的根目录(假设它是网络驱动器)

在 PowerShell 中,即使可以知道驱动器是否为网络驱动器:请参阅在 PowerShell 中,如何确定当前驱动器是否为网络驱动器?

当我尝试获取驱动器的“根”时,我得到了驱动器号。

设置:MS-Dos "net use" 显示 H: 实际上是一个映射的网络驱动器:

Get-PSDrive 告诉我们 Root 是 H:

并且使用 system.io.driveinfo 并没有给我们一个完整的答案:

知道如何获取该信息吗?

谢谢

0 投票
4 回答
29518 浏览

powershell - 在 ForEach 循环中运行程序

我试图让这个简单的 PowerShell 脚本正常工作,但我认为从根本上来说是错误的。;-)

我基本上想获取目录中的文件,并将它们作为参数一一传递给自定义工具。