草庐IT

powerShell

全部标签

windows - 如何只打印 Get-ExecutionPolicy 中的 Scope 和 Policy 项?

这对于Windows大师来说应该是微不足道的,但对于*nix历史学家来说似乎相当令人生畏。我想仅打印表中的Scope和ExecutionPolicy值,通过以下方式获得:#Actualoutput:(Get-ExecutionPolicy-List)ScopeExecutionPolicy--------------------MachinePolicyUndefinedUserPolicyUndefinedProcessUndefinedCurrentUserUndefinedLocalMachineBypass#Expectedoutput:MachinePolicyUndefin

windows - 循环批处理文件

我正在编写一个在WindowsServer2008R2上运行的批处理文件,它有一个for循环,无论我在网上阅读和尝试了多少教程,它都不会运行for循环。echo"Startingblurdetection..."ifnotexist%root%\outputmkdiroutputsettempnum=dirroot|find/i"file"setnum=tempnum-5for/l%idxin(0,1,num)do(%root%\blurDetection.exe%root%\%img%__%idx%.tif%root%\outputecho"blurDetection"%idx"of

windows - 在远程机器上创建私有(private)消息队列

我读到在C#中我们不能在远程机器上创建私有(private)队列:Cannotcreateprivatemessagequeueonremoteserver我的问题是:在PowerShell脚本中,我们可以这样做吗?这是我的示例脚本:echo"LoadingSystem.Messaging..."[Reflection.Assembly]::LoadWithPartialName("System.Messaging")$msmq=[System.Messaging.MessageQueue]echo"Createthequeue"$qName="remoteserver\private

windows - 用于获取运行 Windows Server 2012 的服务器上安装的所有语言包的 Powershell 命令

如何通过powershell命令找到我的服务器(windowsserver2012)上安装的所有语言包?我喜欢(通过脚本)识别我的服务所需的任何语言是否未安装,然后运行​​DISM以添加缺少的语言包。 最佳答案 您可以解析DISM输出:$LangPacks=DISM.exe/Online/Get-Intl/English|Select-String-SimpleMatch'Installedlanguage(s)'|ForEach-Object{if($_-match':\s*(.*)'){$Matches[1]}}if($Lang

windows - 如何在字符 X - Windows 7 的每个实例中在文本文件中创建一个新行?

我有一个充满字符的文本文件:ABCABCABCABC...并使用脚本(批处理、VBS、Powershell,任何对Windows来说都很简单的东西)我试图为每个特定字符的实例自动添加一个新行,在本例中为字母A,因此输出将然后显示如下:ABCABCABCABC如何使用我上面提到的任何脚本工具来实现这一点?非常感谢,非常感谢! 最佳答案 电源外壳:(get-contentc:\somedir\inputfile.txt)-replace'A',"`nA"|set-contentc:\somedir\outputfile.txt

windows - 使用 SC 安装 Windows 服务

我正在使用installutils命令安装一些服务,但我在使用SCcreate命令安装这些服务时遇到了巨大的麻烦。两种模式有什么区别。我没有从命令中得到任何错误,但是有一系列选项。这是我使用的格式:SCcreateZAMdisplayname="ZAM"binpath="E:\ZAM\ZAM.exe"start=auto我得到以下信息:DESCRIPTION:CreatesaserviceentryintheregistryandServiceDatabase.USAGE:sccreate[servicename][binPath=]...OPTIONS:NOTE:Theoptionn

windows - 检查是否安装了特定版本的程序

我正在尝试创建一个非常简单的脚本来检查是否安装了特定程序,如果安装了则返回该程序的版本号。我已经能够运行脚本并能够返回二进制值(无论是否安装了程序),但不确定如何返回已安装程序的版本号。我将发布的内容将是我正在做的事情,以便在安装程序时返回,并且在获得版本号时需要帮助。functionCheck_Program_Installed{$my_check=Get-ItemPropertyHKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\*|Select-ObjectDisplayName,Displa

windows - 有没有办法检查计算机的 AD 组成员身份?

我正在尝试通过Powershell检查计算机组成员身份。我希望能够指定某个计算机名称并从Powershell脚本中找到该计算机所在的组。我计划在计算机上运行脚本,获取主机名,然后打印出该计算机所在的AD组。有没有简单的方法可以做到这一点?编辑:所以这里的计划是让一台计算机检查它在哪个组,然后根据它在哪个组分配一台打印机。我们有许多只有3到4人使用的打印机,但由于分散的性质用户无法减少打印机的数量。我正在查看组策略,但不想创建20个不同的GPO。我想用登录/启动脚本来做到这一点。我不确定这是否可行。编辑#2:这个编辑对聚会来说真的很晚,但我想如果有人发现它会有所帮助。我们最终在User>

windows - Docker 在 Windows 容器上的健康检查和退出代码 ("||"linux 等效)

我想在Windows的Dockerfile中做这样的事情:HEALTHCHECK--interval=5s\--timeout=5s\CMDC:\\src\\curl.exe-fhttp://127.0.0.1:8080/health;if($LastExitCode){$LastExitCode=1}命令本身似乎没问题。每当curl返回不同于0的内容时,退出代码更改为1。当我尝试在Dockerfile中定义它时出现问题。当Docker运行它时,我在检查中得到以下输出:(6)Couldn'tresolvehost'if($LastExitCode)'\r\ncurl:(6)Couldn

windows - Powershell 获取 Windows 中显示的区分大小写的路径

我正在寻找一种方法来获取我的本地路径,其中包括名称中使用的任何驼峰式大小写。主要原因是我可以使用相同的路径在windowswsl中进行调用。例如,在Windows中我可以调用一个文件作为c:\FoO\bar.txtc:\Foo\Bar.txtWindows会将其显示为c:\foo\bar.txt。当我尝试使用bash进入WSL时,我需要知道实际路径,因为Linux区分大小写。我试过用$PSScriptRootSplit-pathC:\FoO\Bar.txt(get-Itemc:\Foo\Bar.txt).FullName但他们只会提供调用脚本的路径。如何获取在Windows操作系统中显