565 次浏览
要使用 PowerShell 为 Azure VM 添加新标签,我们需要使用 New-AZTag 命令。请注意:如果您已将标签应用于 VM,则需要使用 Update-AZTag 命令将其与现有 Azure 标签合并,否则所有先前应用的标签都将被覆盖。例如,我们有以下名为 TestMachine2k12 的 VM,在登录到 Azure 帐户后,我们需要 VM 资源 ID 来将标签应用于 VM。我们将使用哈希表格式的标签,因此它将具有键和值。我们需要应用以下新标签。示例 $tag = ... 阅读更多
4K+ 次浏览
我们将首先使用 Get-ChildItem 命令检索文件夹的内容,然后按如下所示管道化 Measure-Object 命令。Get-ChildItem C:\Temp\ -Recurse | Measure-Object -Property Length -SumOutputCount : 1514 Average : Sum : 372060503 Maximum : Minimum : Property : Length因此,以上输出显示共有 1514 个文件和文件夹,sum 显示所有文件和文件夹组合的大小(以 KB 为单位)。我们可以将其转换为 MB,如下所示。(Get-ChildItem C:\Temp\ -Recurse | Measure-Object -Property Length -Sum).Sum / 1MB 354.824545860291我们可以得到四舍五入的数字,[Math]::Round( ... 阅读更多
23K+ 次浏览
要从命令提示符运行 PowerShell 脚本,我们可以使用以下命令。示例例如,我们有一个脚本 TestPS.ps1,它首先启动打印后台程序服务,然后将文件复制到不同的位置。我们需要使用命令提示符调用此脚本。C:\> PowerShell.exe -command "C:\temp\TestPS.ps1"以上命令类似于运行单个 PowerShell 命令。在这里,我们提供脚本的路径。输出C:\>PowerShell.exe -command "C:\temp\TestPS.ps1" VERBOSE: Performing the operation "Start-Service" on target "Print Spooler (Spooler)". Status Name DisplayName ------ ----- ---------- Running Spooler Print Spooler VERBOSE: Performing the operation "Copy File" on target "Item: C:\Temp\EnvVariable.txt Destination: ... 阅读更多
10K+ 次浏览
要从命令提示符或 cmd 运行 Powershell 命令,我们需要调用 PowerShell 进程 PowerShell.exe。示例请参见示例,C:\> Powershell.exe -Command "Write-Output 'Hello world'" Hello world同样,您可以调用任何命令。我们将使用另一个示例来获取服务信息C:\> Powershell.exe -Command "Get-Service Spooler" Status Name DisplayName ------ ---- ----------- Running Spooler Print Spooler要运行多个命令,C:\> Powershell.exe -Command "Stop-Service Spooler -verbose -passthru; Start-Service Spooler -verbose -passthru"输出VERBOSE: Performing the operation "Stop-Service" on ... 阅读更多
5K+ 次浏览
如果我们想从本地计算机上的 C:\temp 删除隐藏文件和文件夹,我们需要使用此示例中显示的命令。示例但首先,以下命令可以帮助我们从 C:\temp 检索隐藏文件和文件夹。Get-ChildItem C:\Temp -Hidden -Recurse我们只需要管道化 Remove-Item 命令,并强制使用 -Force 参数进行删除。Get-ChildItem C:\Temp -Hidden -Recurse | Remove-Item -Force -Verbose输出
3K+ 次浏览
要删除空文件和文件夹,我们需要首先检索列表,这在之前的文章中已显示。示例在本文中,我们使用的是以下逻辑:如果我们找到空文件或文件夹,我们将删除它们。要实现该逻辑,请使用以下脚本。gci C:\Temp -Recurse | foreach { if($_.Length -eq 0){ Write-Output "Removing Empty File $($_.FullName)" $_.FullName | Remove-Item -Force } if( $_.psiscontainer -eq $true){ if((gci ... 阅读更多
2K+ 次浏览
要在 Windows OS 上使用 PowerShell 获取空文件夹列表,我们可以使用以下方法。gci C:\Temp -Recurse | foreach { if( $_.psiscontainer -eq $true){ if((gci $_.FullName) -eq $null){$_.FullName} } }上述命令检查 C:\Temp 文件夹及其子文件夹,如果内容为空,则返回文件夹的完整路径。PSISContainer 属性代表文件夹,GCI 是 Get-ChildItem 命令的别名。我们可以使用以下命令代替使用 PSISContainer 属性。gci C:\Temp -Recurse -Directory | foreach { if((gci $_.FullName) -eq $null){$_.FullName} }
1K+ 次浏览
要在 Windows OS 中使用 PowerShell 获取空文件列表,有两种方法:a) 使用 Length 参数。我们将计算文件长度。如果为 0,则文件为空,如下所示。Get-ChildItem C:\Temp\ -Recurse | where{$_.Length -eq 0} | Select @{N='EmptyFiles';E={$_.FullName}}输出:b) 另一种方法比较冗长,我们不想深入研究。我们需要检查每个文件的内容,如果为空,则将其声明为空文件。Get-ChildItem C:\Temp -Recurse -File | foreach{ if((Get-Content $_.FullName) -eq $null){ ... 阅读更多
有时,Windows 环境变量的更改可能非常危险,因为它保存了有关用户配置文件、应用程序信息和操作系统信息。最好随时准备好环境备份,并在每次更改或定期更新该文件。备份环境变量很容易。要检索环境变量列表,我们可以使用以下命令:Get-ChildItem env:要存储环境变量,我们可以使用带有文本文件的 Out-File 命令,但是如果特定环境变量的长度足够长,则我们无法将其正确存储在文本文件中。相反,... 阅读更多
971 次浏览
ConvertFrom-String 命令将字符串转换为哈希表格式,如下所示。示例PS C:\> "This is string" | ConvertFrom-StringOutputP1 P2 P3 -- -- -- This is string在上面的示例中,我们没有指定任何标题,因此输出是根据空格分隔符 P1、P2 和连续的。默认情况下,此命令使用“=”分隔符分隔字符串,如下所示。示例$stringhash = @" Name = Spooler Starttype = Manual Status = Stopped "@ $stringhash | ConvertFrom-StringDataOutputName Value ---- ----- ... 阅读更多