Tag: powershell

PowerShell是否支持常量?

我想在PowerShell中声明一些整数常量。 有没有什么好的方法来做到这一点?

Powershell中的“@”符号是做什么的?

我已经看到了PowerShell中使用的@符号来初始化数组。 @符号表示什么,我可以在哪里阅读更多内容?

如何在PowerShell中逐行处理文件作为stream

我正在使用一些多GB的文本文件,并希望使用PowerShell对它们进行一些stream处理。 这是简单的东西,只是parsing每一行,并提取一些数据,然后将其存储在数据库中。 不幸的是, get-content | %{ whatever($_) } get-content | %{ whatever($_) }似乎将pipe道的这个阶段的整个行保留在内存中。 这也是令人惊讶的慢,需要很长时间才能真正阅读。 所以我的问题是两个部分: 我怎样才能让它一行一行地处理stream,而不是把整个事情缓冲在内存中呢? 我想避免为此使用几个RAM的演出。 我怎样才能让它跑得更快? 迭代get-content PowerShell似乎比C#脚本慢了100倍。 我希望有一些愚蠢的,我在这里做,就像缺less一个-LineBufferSize参数或…

PowerShell Array.Add vs + =

我在PowerShell数组中发现了一些有趣的行为,即如果我声明一个数组为: $array = @() 然后尝试使用$array.Add("item")方法将项目添加到它,我收到以下错误: Exception calling "Add" with "1" argument(s): "Collection was of a fixed size." 但是,如果我使用$array += "item"追加项目,该项目被接受没有问题,“固定大小”的限制似乎并不适用。 为什么是这样?

如何在PowerShell中格式化date时间?

我可以格式化Get-Date命令行,没有像这样的问题: $date = Get-Date -format "yyyyMMdd" 但是一旦我有了一个variables的date ,我该如何格式化呢? 下面的声明 $dateStr = $date -format "yyyMMdd" 返回这个错误: “您必须在”-f“运算符的右侧提供一个值expression式”

如何在Powershell中将输出捕获到外部进程的variables中?

我想运行一个外部进程,并将其命令输出捕获到Powershell中的variables。 我目前正在使用这个: $params = "/verify $pc /domain:hosp.uhhg.org" start-process "netdom.exe" $params -WindowStyle Hidden -Wait 我已经确认该命令正在执行,但我需要捕获输出到一个variables。 这意味着我不能使用-RedirectOutput,因为这只会redirect到一个文件。

从PowerShellarrays中删除重复的值

我如何从PowerShell数组中删除重复项? $a = @(1,2,3,4,5,5,6,7,8,9,0,0)

在PowerShell中获取文件的完整path

我需要获取所有文件,包括属于特定types的子文件夹中的文件。 我正在做这样的事情,使用Get-ChildItem : Get-ChildItem "C:\windows\System32" -Recurse | where {$_.extension -eq ".txt"} 但是,它只返回文件名称而不是整个path。

Powershell.exe的path(v 2.0)

Powershell(版本2.0)在哪里? 什么是Powershell.exe的path? 我安装了Windows Server 2008和Powershell。 当我看这个文件夹: PS C:\Windows\System32\WindowsPowerShell> dir Directory: C:\Windows\System32\WindowsPowerShell Mode LastWriteTime Length Name —- ————- —— —- d—- 20.4.2010 17:09 v1.0 我只有Powershell v1.0。 但是当我input PS C:\> $Host.version Major Minor Build Revision —– —– —– ——– 2 0 -1 -1 PS C:\> 这表明我已经安装了v2.0。

PowerShell – 提取文件名和扩展名

我需要从例如my.file.xlsx中提取文件名和扩展名。 我不知道文件或扩展名的名称,名称中可能有更多的点,所以我需要从右边searchstring,当我find第一个点(或从左边的最后一个),提取部分右侧和该点左侧的部分。 也许有更好的解决办法,但我没有在这里或其他地方find任何东西。 谢谢