Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
 Powershell_IT技术博客_编程技术问答 - 「Fatal编程技术网」

是否可以在Powershell ISE中重置运行空间?

的功能之一是能够重置,如和中所示。是否可以在PowerShell ISE中执行此操作?几个月前,我编写了一个名为“ISE会话工具”的模块来执行此操作。本质上,ISE中的运行空间等同于一个“选项卡”容器,其子文档共享该运行空间。我的脚本查看当前打开的文件,记住它们,创建新选项卡(运行空间)并关闭旧选项卡,然后将打开的文件添加到新选项卡。其他特点: 自动保存当前会话(文件在当前选项卡中打开。) 如果需要,可以禁用和手动控制 提示在ISE打开时重新加载最后一个会话 系统会向您显示一条提示,提醒

用于删除临时文件和注册表项的Powershell脚本

我创建了一个小的PowerShell脚本来删除Autodesk应用程序。但是,PowerShell不喜欢%username%这样的系统变量。在Powershell中实现这一点的最佳方式是什么 # Remove all Autodesk products from a Windows System $AutoDeskPaths = "C:\Users\%username%\AppData\Roaming\Autodesk", "C:\Users\%username%\AppData\Loca

Powershell 解析日期为的文件夹

我有一个文件夹,其中部署了windows服务。此文件夹中的每个部署都创建了一个新文件夹,其名称为适当的当前日期和时间,并从此文件夹重新安装win service。 如何定义上一个部署文件夹的物理路径 如果我理解您的问题,您希望从D:\projects\ru\service获取第二个最新文件夹 您可以这样做: (dir -path D:\projects\ru\service | ? {$_.PsIsContainer} | sort LastWriteTime)[-2].FullName 如果

Powershell-删除两个变量之间的空格

我有两个数组,其中包含从文本文件中获取信息的字符串选择。然后,我使用For循环遍历这两个数组并一起打印字符串,这恰好创建了一个文件夹目标和文件名 Get-Content .\PostBackupCheck-TextFile.txt | ForEach-Object { $a = $_ -split ' ' ; $locationArray += "$($a[0]):\$($a[1])\" ; $imageArray += "$($a[2])_$($a[3])_VOL_b00$($a[4])_i0

Powershell-如何从文本文件中获取前几行?

我有一个文本文件,包含数百行包含数据库信息的文本 我试图为任何35GB的数据库提取DatabaseIds 我想使用Powershell查询该文件,并生成一个包含所有匹配数据库的文本文件 所以本质上,我想扫描文件,找到一个DatabaseSize,它是35,然后从前面的3行中提取相应的DatabaseId 我已经在网上找遍了,但似乎找不到任何可以做到这一点的东西 文本文件提取示例: ServerId = VMlinux-b71655e1 DatabaseId = db-ecb2e784 Statu

Azure Powershell:获取服务的公共虚拟IP

是否可以使用powershell获取azure服务的公共虚拟IP(VIP)?我不确定,但我怀疑是否有一种简单的方法,因为它可能会改变(尽管它很少改变) Microsoft Azure提供了一个友好的DNS名称,如“blogsmarx.cloudapp.net”或“botomatic.cloudapp.net”。提供这些名称是有原因的(不仅仅是比IP地址更漂亮)。这是一个必要的抽象层,可以让下面的虚拟IP地址(VIP)在不中断服务的情况下进行更改。应用程序的VIP很少更改,但特别是考虑到地理位置场

Powershell安全性获取服务不同结果交互式任务与计划任务

我花了几个小时试图解决这个问题。我正在运行PowerShell以验证各种服务是否正在运行。我想从Windows任务计划程序每隔5分钟运行一次 它检查其他服务器上的服务,以及运行它的同一台机器上的一些服务。当我在TaskScheduler下运行它时,在运行interactive的同一用户ID下,我会得到不同的结果。以交互方式显示本地计算机上的所有服务正在运行。当运行任务调度器时,它告诉我找不到服务 这只是一个更大程序的一个片段。我从CSV文件中获取服务器/服务名称,然后在最后它发送一封漂亮的HTM

Powershell通过CSV循环将电子邮件与ActiveDirectory进行比较

如果我在没有外观的情况下运行此脚本并手动输入say my email作为(邮件)部分=myaddress@someplace.com)它工作并显示在广告中找到的用户,但当我运行此脚本循环时,返回的是电子邮件地址的完整列表,其中用户在广告中不存在,就好像它在广告中找不到电子邮件地址一样 我在这里做错了什么 $path = "H:\users.csv" $csv = Import-Csv $path Import-Module ActiveDirectory foreach($line in $

PowerShell:启动CLR失败,HRESULT 8007000e

在远程服务器上运行PowerShell脚本时,我遇到以下错误: Starting the CLR Failed with HRESULT 8007000e 这就是我运行/调用脚本的基本方式: 在本地服务器上,我正在运行一个CMD脚本,该脚本调用PowerShell脚本来创建到远程服务器的远程会话。在PowerShell脚本中,我还调用CMD脚本在远程服务器上运行,如下所示: $Script = [scriptblock]::create("cd $BuildPath | cmd.exe /c

Powershell 通过函数传递字符串并始终获取$null变量

我在一个函数的开头使用了以下内容,该函数用于查询计算机中的各种wmi对象。如果仅运行just get_卷,则应使用127.0.0.1。似乎当我在没有任何字符串的情况下运行get_volumes时,它会直接传递到else段。实现这一目标的正确或更好的方法是什么 PS> function get_volumes([string]$a){ if ($a -eq $null){ write-host 'Using localhost' $a = '127.0.0.1' }e

Powershell-提示向命令中添加变量

老实说,我对powershell和所有类似的东西都很熟悉 我试图实现一个简单的批处理文件来执行,并简化解锁用户帐户 目前,我已经设法创建了以下基于谷歌搜索,这将只是解锁一个名为“用户名”的用户帐户 powershell-命令“&{import module activedirectory;unlock adaccount USERNAME}” 我试图实现的是将“USERNAME”部分设置为一个变量,并在执行批处理文件时创建一个提示以请求用户名,以便能够解锁任何键入的帐户 我试过搜索相关的帖子,但

Powershell 需要特定的过滤输出

我试试这个命令 get-wmiobject win32_networkadapter -filter "netconnectionstatus = 2" | Select macaddress | Select -Last 1 我想摆脱macaddress所说的格式表 我该怎么做?我只需要macaddress,不需要表。选择对象的属性以及其他内容。结果仍然是对象列表,尽管表格输出显示了对象的属性。如果只需要特定属性的值,则需要将其展开: get-wmiobject win32_networ

使用PowerShell计算文本文件中的特定字符串

是否可以对文件中的特定字符串进行计数并将值保存在变量中 对我来说,应该是字符串“/export”(不带引号)。这里有一种方法 $count = (get-content file1.txt | select-string -pattern "/export").length 如注释中所述,这将返回包含模式的行的计数,因此如果任何行有多个模式实例,则计数将不正确以下是一种方法: $FileContent = Get-Content "YourFile.txt" $Matches = Select

Powershell 对md5sum命令生成的校验和文件使用--check失败

当我尝试对生成的校验和文件运行md5sum-c时,遇到了一个错误。我应该提到的是,我正在从PowerShell运行这个程序(最终会有一个脚本运行这个程序),这是md5sum的cygwin版本 我有一个测试文件,jira_defect.txt,我创建了如下校验和: md5sum jira_defect.txt > result.md5 这将提供一个包含以下内容的文件: 7d559b59459052f274e290b5e01a5485 *jira_defect.txt 但是当我跑的时候 m

在哪里可以找到Convert VHD PowerShell命令

我是PowerShell新手,在查找Convert VHD命令时遇到问题。我希望谷歌告诉我需要安装SDK,但找不到任何说明 帮助页面显示它已经安装在Win 8.1(我的操作系统)上。如果是,它在哪里? 感谢您的帮助。您必须导入ServerManager模块 Import-Module ServerManager 当然,您必须安装它,您可以在Windows PowerShell的名为Hyper-V Module的功能中找到它 这应该是从Powershell安装模块的代码 Add-Window

如何使Powershell ISE支持颜色和非ASCII字符?

以下是我在项目目录中运行特定grunt任务时Windows PowerShell的一些示例输出: Done, without errors. Execution Time (2015-08-25 01:57:14 UTC) loading tasks 9ms ██████ 17% loading grunt-contrib-copy 23ms ███████████████ 43% copy:styles 20ms ███

Powershell 我需要修改我的WinSCP脚本,以便只下载具有特定文件扩展名的文件

我有一个调用WinSCP.NET程序集的脚本。脚本从FTP目录下载最新的文件,并根据其文件扩展名+.txt(2245.xml->xml.txt)对其命名 我需要创建一个筛选器,以便只下载名为tn*或nc1的文件扩展名。谁能给我指出正确的方向: $session = New-Object WinSCP.Session # Connect $session.Open($sessionOptions) # Get list of files in the directory $directoryI

将powershell代码转换为从url读取信息到vbscript

我在powershell中有以下代码,非常有效,但由于.NET问题,需要将其作为vbscript运行。有人能帮我理解vbscript支持的调用方法吗 此代码读取URL时使用用户名和访问键等获取信息的方法。$item是正在读取的项目的占位符 $url="http://server.org/Info/svcs/Info.wsdl" $proxy=New-WebServiceProxy -Uri $url -Class "proxy" -Namespace "Service" -UseDefaultC

如何分配Ctrl+;/作为Powershell中的关键手势

我正在尝试使用这行代码指定powershell ISE的快捷方式 $psISE.CurrentPowerShellTab.AddOnsMenu.Submenus.Add("Comment Selected Lines",{Comment-IseSelectedLines},"Ctrl+/") 但我犯了这个错误 Cannot convert argument "shortcut", with value: "Ctrl+/", for "Add" to type "System.Windows.

Powershell 如果在会话中间断开目标计算机,则调用-SCRIPPTBROL{{}的命令如何运行

我在微软广告公司工作。我已经配置了WSMan和CredSSP。一切都很好,会话很好 几天前我们遇到了一个问题,一个系统管理员错误地通过GPO创建了一个防火墙规则,阻止了所有入站连接(他的意思是允许连接)。当他能够对错误做出反应时,许多电视台已经更新了这项政策 此时,任何计算机都无法从域控制器接收任何更新。所有这些电台都被封锁,无法访问任何外界 要解决这个问题,我必须关闭防火墙,更新组策略,然后重新打开防火墙。它在一些计算机站上工作 从那以后,我写了一些脚本来处理将来类似的情况。我唯一关心的是执行

Powershell AWS S3,上传后从本地目录删除文件

我在一个驱动器的不同目录中有备份文件。这些目录中的文件可能相当大,高达800GB左右。因此,我有一个批处理文件,其中包含一组脚本,用于将文件上载/同步到S3 见下例: aws s3同步R:\DB\u Backups3\System s3://usa daily/System/--exclude“*”--include“*/*/Diff/*” 上传时间可能会有所不同,但目前为止还不错 我的问题是,如何编辑脚本或创建一个新脚本,在s3存储桶中检查文件是否已上载,并且仅当文件已上载,然后将其从本地驱动

Powershell 为什么访问参数变量';在ISE中,带有Get变量的s属性仅在第一次工作?

由于StackOverflow的杰出人员,我们收到了一份非常好的关于如何在脚本或函数的Param()子句中检索ValidateSet中定义的值的报告: Param ( [ValidateSet('Startup', 'Shutdown', 'LogOn', 'LogOff')] [String]$Type = 'Startup' ) (Get-Variable Type).Attributes.ValidValues 唯一让我感到困扰的是,这段代码只有在PowerShell

复制项目,但不包括PowerShell中源目录的子文件夹文件

我有一个脚本,可以将具有特定扩展名的文件从源目录移动到目标目录 我的源目录如下所示: if(!(Test-Path $SourceDirPath) -or !(Test-Path $DestinationDirPath)) { Write-Host "The source- or destination path is incorrect, please check " break }else { Write-Host "Success" Copy-Item -p

使用PowerShell将多个子文件夹复制到一个文件夹

我是PowerShell的新手,我有一个小问题 我在C://--C:/folder1和C:/folder2 folder1包含10个子文件夹,我只想将其中的3个子文件夹复制到folder2 我应该用远程计算机来做,所以我也应该使用Invoke命令 不幸的是,该程序与我的代码不兼容 $SubFolders = "C:/subfolder1", "C:/subfolder2", "C:/subfolder3" $copy = InvokeCommand -ComputerName $compname

PowerShell:将文本拆分为两行(或多行)

我刚刚完成菜单生成器的工作,但我需要添加警告消息或弹出窗口,如下所示: 与菜单的其他元素一样,警告消息的宽度应为80,内部宽度为78,因为边框为两个。我构建了一个带有一个参数的函数,可以很容易地为将要显示的文本生成消息。问题是,当我输入的文本长度超过78个字符时,就会出现错误。我想把它分成两行或更多行,这取决于我们将获得多少行参数,因为没有人会在每个参数/行上计算到78。我正在寻找一种可能性,将文本分割成两行或多行,以适应78的内部宽度 因为这次我决定用空格分隔符分割文本 $textsplit

Powershell 我如何使octopus部署步骤以管理员身份执行,以便调用Update SPSolution

我已经设置了一个八达通部署脚本,以使用update SPSolution和WSP包更新SharePoint解决方案 当我从Powershell ISE(以管理员身份运行)测试脚本时,它可以工作 当我从Powershell ISE(正常模式)测试脚本时,它失败,出现错误Update SPSolution:Access denied 当我让它从Octopus运行时,它也会失败,出现错误Update SPSolution:Access denied 我添加了以下代码,以查看从八达通运行时,我的代码

Powershell Robocopy未创建日志文件

有人能告诉我我犯的语法错误吗 robocopy "$env:UserProfile\desktop\" "$Destination\desktop" *.* /copy:DAT /log:"C:\Logs" robocopy "$env:UserProfile\pictures" "$Destination\pictures" *.* /copy:DAT /log+:"C:\Logs" robocopy "$env:UserProfile\documents\" "$Destination\do

使用powershell中的变量查找用户

这条线行得通 get-aduser -f {name -like '*John*'} | format-Table name,SamAccountName === 下面的方法不起作用。我们将非常感谢您的帮助,提前非常感谢 $name = Read-Host "Enter a First Name or Last Name" $uname = "'*" + $name + "*'" get-aduser -f {name -like $uname } | Format-Table na

无法在Powershell中解密.PEM,但可以在AWS控制台中解密

我们将我们的.AWS.PEM密钥的内容存储在密码管理器实用程序中 我们正在使用PowerShell自动化服务器的构建 目前我正在尝试从密码管理器中提取密码,并创建一个.PEM密钥。一旦我完成了它,它会立即被删除 这是我的密码: try { //pulling the key! $password = $mypulledkey } catch{} $password | Out-File -Encoding ascii C:

如何使此PowerShell脚本成为一行

这个PowerShell脚本工作得很好,但我需要它是一个单行脚本,如何内联创建参数对象 $action = New-ScheduledTaskAction -Execute 'Powershell.exe' -Argument 'invoke-command -scriptblock {iisreset}' $trigger = New-ScheduledTaskTrigger -Daily -At 9am Register-ScheduledTask -Action $action -Tri

PowerShell中HTML报告的排序列

如何对联机列和正常运行时间列进行排序?我想在顶部显示True,在顶部显示最长的正常运行时间,然后是FALSE <# .Synopsis Query Uptime Details of servers. .Description This script helps you to get the uptime details of the servers. It also generates a HTML report

Powershell 当进程更改时,通过Get计数器获取进程不会刷新,如果进程结束,则抛出错误

我的脚本监视进程的CPU使用情况,每5秒循环一次代码并将其写入文件。这很好用 但是我发现当一个新进程运行时,我的脚本将无法找到它,直到我停止脚本并再次运行它 此外,如果进程结束/停止,脚本会给出以下错误: 获取计数器:其中一个性能计数器示例中的数据为 无效。查看每个项目的状态属性 PerformanceCounterSample对象以确保其包含有效数据 第2行字符:34 PowerShell似乎只检索一次进程信息并将其缓存 如果我运行bellow脚本(它是我所有脚本的一部分),它将完美运行: w

Powershell 从GridView输出中删除文件夹

我一直在使用在此处和其他来源上找到的几个脚本,试图使用PowerShell脚本删除系统上的数千个空文件夹,这些文件夹最终用于日常表单处理。有几种简单有效的方法可以做到这一点,但我需要一种方法来验证和选择文件夹,这样我就不会删除少数即使是空的也不应该删除的文件夹 我正在为$folder使用参数语句,因此我可以在命令行中输入它,或者它将提示输入它。使用这个命令,我得到了gridview,如果我只是简单地回显输出,就可以了。然而,我似乎不知道如何将输出传递给Remove Item或Del-Recurs

Powershell 使用句点表示相对路径与$PSScriptRoot之间有区别吗?

我在脚本中引用了一些文件,其中有一个句点表示脚本的当前执行目录,例如。\images\test.png,但我发现我也可以使用$PSScriptRoot\images\test.png指向同一个文件 有没有一个论点可以支持一个而不是另一个?使用PS ISE时,前者要求在运行代码之前将CD放入脚本目录,但脚本通常会自动运行,因此PWD应始终在范围内本地化。还有别的案子我没有考虑吗 ED:我想我应该指定,在一个独立脚本被隔离执行的情况下,我是在询问,它被直接调用,而不调用其他脚本,这可能导致当前位置的

修改函数中的PowerShell对象

有没有一种方法可以将对象传递到函数中而不必命名对象本身 换句话说,我可以使用对象的名称调用函数并对该对象进行更改,而不是对每个$username重复相同的最后三行代码(有10个username文本框),如果输入对象都是引用类型,则可以在$input枚举器上迭代: function Itil { $_.Font = 'Microsoft Sans Serif, 8.25pt, style=Italic' $_.Text = 'Double-click to add username

PowerShell/PowerShell ISE-如何在命令窗口中输入选项卡缩进?

在命令行的PowerShell中,如何为多行命令输入选项卡缩进 显然,[tab]或[shift]+[tab]不起作用,否则我不会问这个问题。使用PSReadline(内置于PS 5.1或可通过安装模块获得)您可以制作自定义密钥处理程序: Set-PSReadlineKeyHandler -Chord 'ctrl+tab' -ScriptBlock { $text = '' $cursor = 0 [Microsoft.PowerShell.PSConsoleReadLi

正在从Powershell变量中删除字符串

我试图简单地返回活动用户名,以便稍后在脚本中使用,但是我目前不想让我的变量只填充用户名,不包括域 Function Get-Username() { $username = Get-WMIObject -class Win32_ComputerSystem | select username return $username } Function Delimit-Username() { $newUserName = $username -replace 'DOMAIN\','' Wri

带列表的Powershell继承<;定制类>;

因此,我很难理解如何在PowerShell中使用自定义类继承System.Collections.Generic.List类。如果我使用下面的代码示例,脚本将失败,错误为“创建管道时出错”。如果我将列表类型从MyClass更改为标准类型,如String,则代码工作正常。我肯定我遗漏了一些明显的东西,但我的搜索没有找到答案 Class MyClass { [String]$foo [int]$bar } Class MyClassList : System.Collections.

Powershell 从UNC路径获取ShareName

我正在执行一项任务,需要从UNC路径获取服务器上的本地路径 基本上\\server\MyShare\Somewhere\Bla应该是例如D:\foo\bar\Somewhere\Bla 我从[system.Uri]$Path了解服务器主机,因此我知道在哪个服务器中查找本地路径 $localPath = Join-Path $localShare $remainingPath 我可以使用Get SmbShare获取服务器上的共享 现在我唯一需要比较的是,分割UNC路径并获取共享名 有没有一个简单

使用Powershell中的堆栈,如何传递包含空格的测试参数?

在堆栈外运行美味测试时,我需要将字符串“faillog”作为美味模式参数传递 在bash中,这是非常直接的: PS C:\Pyrethrum>堆栈测试--fast--ta“-p\“失败日志\ 但尝试使用Powershell实现同样的目标让我抓狂: PS C:\Pyrethrum>stack test--fast--ta“-p”“fail”“ 没有空间时工作(运行测试) PS C:\Pyrethrum>stack test--fast--ta“-p”失败日志“ 分析目标时出错:未找到目录:日志

Powershell 为什么Select字符串不过滤ToString()方法的输入?

为什么powershell不过滤对象的toString方法的输出 Get-ChildItem cert:\localmachine\my | % { Select-String -InputObject $_.ToString() -Pattern 'testcert' -SimpleMatch } 相反,我只是得到了我通常通过跑步得到的一切 获取ChildItem证书:\localmachine\my |%{$\u0.ToString} 我希望像grep或findstring一样,我只得到与

如何设置PowerShell类的默认输出

我正在尝试创建一个从标准[Data.DataTable]类派生的PowerShell[DataTable]类,以简化数据表的创建: (另见:) 它用于创建新的数据表: $MyDataTable = [DataTable]('a', 'b', 'c') $MyDataTable.AddRow(@(1,2,3)) 但是要获得需要的$DataTable,需要执行以下操作: $MyDataTable.DataTable a b c - - - 1 2 3 我希望它在默认情况下输出数据表$MyData

Powershell 如何检查和创建共享(隐藏)管理目录?

我有几个文件服务器,我想创建一个路径,如果它不存在。。。简单对吧?我想是的,但是路径是沿着一个隐藏的管理共享 就在我认为自己在编写一个简单问题的脚本方面越来越得体的时候,我的$h@$@却被一股脑地吸引住了 下面是我划掉的代码: Cls #check for fileshare $servers = get-content C:\Temp\test.txt forEach ($server in $servers) { $shareTest = Test-Path "\\$Server\Shar

Powershell 查询返回的API失败,格式化错误

我正在尝试查询此API 我无法解决URL错误,这让我相信在这行的某个地方我在格式方面出了问题,但我不知道在哪里,所以任何帮助都将不胜感激 $Request = Invoke-RestMethod -Method Post -Uri 'https://api.iocparser.com/url' -Headers @{"Content-Type" = "application/json"

在Win10上从PowerShell脚本内部打印PNG文件

我需要从PowerShell脚本中打印PNG文件。在Win10下,指向特定打印机。我找到了许多针对文本文件和PDF的解决方案,但没有一个针对图像文件。因此有一个答案: Start-Process C:\windows\system32\mspaint.exe -Arg '/p "C:\scripts\testfil.PNG" /pt "\\ourprintserver\skr1234"' 欢迎访问stackoverflow.com。对于您遇到的任何特

Powershell 如何在dbatools命令中捕获警告?

上下文: 我需要能够捕获在使用Restore-DbaDatabase cmdlet时阻止还原某些备份的警告 我发现一些帖子提到,还原数据库的-Silent参数将把这些警告视为错误,这样我就可以捕捉到它们,但是这个参数已经不存在了 我使用-EnableException参数时运气不佳。警告显示在屏幕上,但我无法在脚本中捕获它们,因为没有引发异常,如下图所示: 问题: 捕捉/捕获dbatools命令所有警告的正确方法是什么?您需要将警告流重定向到stdout3>&1。请参阅。您也可以在脚本开头使用

powershell将文本保存在输出文件中

执行上述脚本时,计算时间的结果值保存为EndTime.txt。但是,900秒过后,消息不会保存在EndTime.txt文件中,只输出时间值。如何修复?根据注释“当执行上述脚本时,结果仅为数字ex)39568.2052459不记录“时差大于900秒”,我最终可能知道您的目标:) 您所做的是将秒数通过管道传输到文件($diff.TotalSeconds | Out文件'D:\script2\IIS\EndTime.txt'),您需要通过管道传输消息本身。我在消息中添加了秒数值 $timeFromFi

上一页   1   2    3   4   5   6  ... 下一页 最后一页 共 1208 页