草庐IT

powerShell

全部标签

Windows Powershell 有时不输出任何值(温度传感器)

有时会出现没有显示温度传感器的情况。我使用Powershell来读取值并且经常有效。我想知道为什么Windows有时不返回任何东西。是在我的笔记本电脑上、软件上还是什么?powershellGet-WmiObject-ClassWin32_PerfFormattedData_Counters_ThermalZoneInformation|Select-ObjectName,Temperature 最佳答案 实际类是MSAcpi_ThermalZoneTemperature。使用以下功能:functionGet-Temperature

windows - 如何停止我的脚本循环

我正在针对我的AD运行附加的脚本。我只需要脚本返回每个AD帐户一次,但它似乎在无限循环中运行。我该如何阻止它?谢谢Search-ADAccount-AccountExpired|foreach{get-aduser-Filter'description-like"*leaver*"'} 最佳答案 问题在于过于复杂的foreach循环和过滤不当的查询。让我们仔细看看:Search-ADAccount-AccountExpired|foreach{#1get-aduser-Filter'description-like"*leaver*

sql-server - 在 Docker 中安装 MSSQL 2014 Express 时出现 "Value cannot be null. Parameter name: userName"错误

当我尝试在Dockerfile中安装MSSQL2014Express时,它失败并显示错误“值不能为空。参数名称:用户名”。Thefollowingerroroccurred:Valuecannotbenull.Parametername:userNameErrorresult:-2147467261Resultfacilitycode:0Resulterrorcode:16387Pleasereviewthesummary.txtlogforfurtherdetailsMicrosoft(R)SQLServer201412.00.5000.00Copyright(c)Microsoft

windows - 如何使用 whatif 标志运行 sdelete

我正在编写一个PowerShell脚本,使用Get-ChildItem查找目录并将它们传递给sdelete。我想试运行它。我认为sdelete没有-WhatIf标志。有什么方法可以实现类似的目标吗? 最佳答案 您可以实现-WhatIf和-Confirm通过添加SupportShouldProcess功能到函数顶部的CmdletBinding语句和if($pscmdlet.ShouldProcess(something){}阻止您的代码。例如:FunctionRemove-WithSDelete{[CmdletBinding(Supp

windows - 在 GAC 中注册 DLL(CMD 或 PowerShell)

我正在尝试在GAC中注册一个.DLL。目前我无法证明它已添加到程序集中。使用命令C:\Windows\System32>%programfiles(x86)%\MicrosoftSDKs\Windows\v7.0A\Bin\gacutil.exe-i"path\to\my\file.dll"提示告诉我程序集已添加到缓存中。检查时C:\ProgramFiles(x86)\MicrosoftSDKs\Windows\v7.0A\Bin>gacutil.exe-lfile.dll它说程序集中有0个元素。通过Powershell命令,我尝试像这样添加DLL:PSC:\WINDOWS\syste

windows - 如何在 PowerShell 中同时运行 2 个方法

我有两个函数,我想在后台运行每个函数来监视用户行为。这些功能本身运行良好;但是,我似乎无法弄清楚如何调用它们同时进行工作。在UNIX中,我会简单地使用fork()并完成它,但我正在努力使用PS。#start-job-ScriptBlock$(func1)#start-job-ScriptBlock$(func2)因为每个函数都在无限期运行,所以实际上并没有调用第二行,实际上只有第一个函数在做任何工作。我已经尝试在[diagnostics.process]中使用start-job、invoke-command、start-process和start方法。我的直觉告诉我,我没有正确理解st

regex - 在 PowerShell 中使用加号重命名文件

当我从Dropbox下载一堆文件时,所有瑞典语字符ä都变成了+ñ。我想将此+ñ替换为ä。我的命令如下:Get-ChildItem-Filter"*+ñ*"-Recurse|Rename-Item-NewName{$_.name-replace'"+ñ"','ä'}但是运行它会得到以下错误信息:Rename-Item:Theinputtothescriptblockforparameter'NewName'failed.Invalidregularexpressionpattern:+ñ.Atline:1char:60+Get-ChildItem-Filter"*+ñ*"-Recurse

python - 将大型目录树中的所有文件大小归零(删除文件内容,保留文件)

如何删除大型目录树(10GB,1K文件)的内容(将文件大小归零)但保留整个树结构、文件名和扩展名。(如果我能保持原来的上次写入时间[上次内容修改时间],那就太好了)。我看到了几个针对单个文件的建议,但无法找到使整个CWD都有效的方法。defdeleteContent(fName):withopen(fName,"w"):pass 最佳答案 以管理员身份运行以下命令会将所有内容重置为空文件并保留文件的最后写入时间gcic:\temp\test\*.*-recurse|%{$LastWriteTime=$PSItem.LastWrite

windows - 如何在 PowerShell 中获取 CPU 功耗?

有没有办法用PS获取CPU功耗?OpenHardwareMonitor显然有办法返回该数字,但我无法在OHM'ssource中找到相关代码. 最佳答案 我在存储库中搜索“温度”并找到了这个示例:https://github.com/openhardwaremonitor/openhardwaremonitor/blob/da432ef07cf125c019afd3a27f447da428404611/Hardware/LPC/W836XX.cs它似乎需要特定于设备的类,例如用于HP和Fujitsu系统的OpenHardwareMon

Windows 批处理脚本复制最近 x 分钟内修改的文件

我是脚本新手。我想在批处理脚本中复制最近x分钟内修改的文件。在Linux中,有一个简单的命令可以找到并复制最近x分钟内修改的.zip文件。find/user/log/*.log-mmin-180-typef|cut-d'/'-f5|xargstar-czvf/tmp/$name.tar.gz--directory=/user/log/windows有没有什么命令可以用来复制最近x分钟修改过的文件因为.log文件不断被服务日志修改或者我如何根据分钟或小时使用forfiles命令 最佳答案 这在PowerShell中相对容易。$ts=N