草庐IT

PowerShell

全部标签

xml - Powershell:将 XML 转换为字符串

我正在寻找一种将XML对象转换为字符串的方法。在Powershell中有类似$xml.toString()的方法吗? 最佳答案 您可能正在寻找OuterXml。$xml.OuterXml应该给你你想要的。 关于xml-Powershell:将XML转换为字符串,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/15410455/

xml - 如何在 Powershell 中遍历 XML?

我在一个文本文件中有这个XML文档:SQLServer(MSSQLSERVER)RunningSQLServerAgent(MSSQLSERVER)Stopped我想遍历每个对象并找到DisplayName和ServiceState。我该怎么做?我已经尝试了各种组合并且正在努力解决它。我这样做是为了将XML放入变量中:[xml]$priorServiceStates=Get-Content$serviceStatePath;其中$serviceStatePath是上面显示的xml文件名。然后我想我可以做类似的事情:foreach($objin$priorServiceStates.Ob

xml - 如何在 PowerShell 中为 XML 添加子元素

我正在尝试为此xml创建一个子XML元素:我使用这个PowerShell脚本:[xml]$doc=Get-Content($filePath)$child=$doc.CreateElement("newElement")$doc.configuration.AppendChild($child)我有一个错误:方法调用失败,因为[System.String]不包含名为'AppendChild'。 最佳答案 如果您使用点符号来导航XML文件(例如$doc.configuration),Powershell会尝试巧妙地处理它返回的内容。如

xml - 在 powershell 中保存 XML 文件需要完整路径。为什么?

我正在使用powershell的XML功能来修改.config文件。调用XMLDocument.Save没有任何效果,除非我提供完整的路径名。#Openthexmlfile$config=[xml](get-contentweb.config)##modifytheXML$config.SelectNodes("./configuration/connectionStrings/add[@name='LocalSqlServer']")|%{$connNode=$_}$connNode.connectionString=$connNode.connectionString-replac

windows - 使用 PowerShell 在文件中附加 X 行数

我遇到了一个正在处理文本文件的问题。该文件只是一个添加了一些日期的纯文本文件,换句话说,一个简单的日志文件。我的问题是“我需要注释掉一些行,该数字作为参数传递”。我挂断的部分是实际注释掉X行数部分(可以说添加了#)。我可以读取和写入文件、读取行和使用搜索字符串写入行,但我似乎无法弄清楚的是如何编辑X行数并单独保留其他行。附言实际上,这些行是在文件的末尾还是开头并不重要,尽管了解如何添加到开头或结尾的方法会很好 最佳答案 gc.\foo.txt|select-First3|%{"#{0}"-f$_}gc.\foo.txt|select

windows - 如何在多脚本中使用 powershell 函数?

我的C#程序应该通过打开执行powershell函数,如下所示:functionRunIE{$a=Get-ItemPropertyHKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion-nameProgramFilesDir$path=$a.ProgramFilesDir+"\InternetExplorer\iexplore.exe"&$path"www.heise.de"-extoffStart-Sleep6$shell=(New-Object-COMShell.Application)$ie=@($shell.Application.Win

windows - 在混合批处理/powershell 脚本运行中转义双引号问题

这是我正在尝试做的事情:@ECHOOFFCALLpowershell-ExecutionPolicyRemoteSigned-Command"$sh=new-object-com'Shell.Application';$sh.ShellExecute('powershell','-NoExit-Command"$path="""HKLM:\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}""";echo$path"','','runas')"PAUSE基本上,我想要一个可以双击的批

windows - 使用 PowerShell 递归获取 AD 组成员资格

获取单个用户所属的所有组的最干净(和最快)的方法是什么。我使用PowerShell2.0计算Citrix中的登录用户数量,并将他们从ActiveDirectory分组。所有用户都是名为“VDI-Billing”的组的子组之一的成员,但用户和VDI-Billing组之间的嵌套组数并不总是相同。所以我希望能够让所有组(包括嵌套组)与VDI-Billing组(第1级)的成员列表进行比较,以便我得到一个概览。例子:VDI-Billing有一个成员组NL-VDI-T-Systems。有多个组(它们本身有多个组)。但是概述必须计算NL-VDI-T-Systems的所有用户(子)成员。所以在概述中我

windows - 用于查找给定字符串并替换给定目录中所有文件的脚本

如何在powershell中编写脚本,在给定目录的所有文件中找到给定的字符串并将其更改为给定的第二个字符串?感谢您的帮助,再见 最佳答案 也许是这样的$files=Get-ChildItem"DirectoryContainingFiles"foreach($filein$files){$content=Get-Content-path$file.fullname$content|foreach{$_-replace"toreplace","replacewith"}|Set-Content$file.fullname}

c# - 如何在远程计算机上执行命令?

我有一台可以使用RemoteDesktopConnection应用程序连接的机器,它位于不同的域中。这台机器有一个SQLServer,只有当我登录到这台机器后尝试访问它时才能访问它。是否有可能(通过C#或Powershell或其他机制)发起类似ssh的连接到这台机器,执行sqlcmd命令并复制回数据? 最佳答案 尝试psexec它允许您在远程机器上运行命令提示符 关于c#-如何在远程计算机上执行命令?,我们在StackOverflow上找到一个类似的问题: h