【运维管理】如何像管理linux一样,批量管理windows主机

很多小伙伴在维护的时候也会难免遇见批量的windows操作,那么一定有人就会问是否有方法可以用命令来批量操作windows主机,其实非常简单,windows早就为我们提供了一个内置的批量管理工具,那就是这个强大的POWERSHELL,今天我就给大家介绍一下:

使用 PowerShell 批量管理多台主机是一种高效的方法,尤其是在需要执行相同任务或配置多个系统时。以下是一些常见的任务和相应的 PowerShell 脚本示例,可以帮助你批量管理主机。

1. 远程执行命令

要远程执行命令,你需要启用 PowerShell 远程管理和配置目标主机。以下是步骤:

启用 PowerShell 远程管理
  1. 在目标主机上启用 PowerShell 远程管理

    Enable-PSRemoting -Force
  2. 配置防火墙规则

    Set-NetFirewallRule -Name "WINRM-HTTP-In-TCP" -Enabled True
  3. 确保 WinRM 服务正在运行

    Set-Service -Name WinRM -StartupType Automatic
    Start-Service WinRM
远程执行命令

假设你有一份包含目标主机 IP 地址或主机名的文本文件 hosts.txt,你可以使用以下脚本来批量执行命令:

$computers = Get-Content -Path "C:\path\to\hosts.txt"
$command = { Get-Process }Invoke-Command -ComputerName $computers -ScriptBlock $command

2. 批量安装软件

假设你要在多台主机上安装某个软件包,可以使用以下脚本:

$computers = Get-Content -Path "C:\path\to\hosts.txt"
$installerPath = "\\server\share\installer.msi"Invoke-Command -ComputerName $computers -ScriptBlock {param($installerPath)Start-Process msiexec.exe -ArgumentList "/i $installerPath /quiet" -Wait
} -ArgumentList $installerPath

3. 批量配置注册表

假设你需要在多台主机上修改注册表项,可以使用以下脚本:

$computers = Get-Content -Path "C:\path\to\hosts.txt"
$keyPath = "HKLM:\Software\MyKey"
$valueName = "MyValue"
$valueData = "MyData"Invoke-Command -ComputerName $computers -ScriptBlock {param($keyPath, $valueName, $valueData)if (-not (Test-Path $keyPath)) {New-Item -Path $keyPath -Force}Set-ItemProperty -Path $keyPath -Name $valueName -Value $valueData
} -ArgumentList $keyPath, $valueName, $valueData

4. 批量更新组策略

假设你需要在多台主机上更新组策略,可以使用以下脚本:

$computers = Get-Content -Path "C:\path\to\hosts.txt"Invoke-Command -ComputerName $computers -ScriptBlock {gpupdate /force
}

5. 批量收集日志

假设你需要从多台主机上收集事件日志,可以使用以下脚本:

$computers = Get-Content -Path "C:\path\to\hosts.txt"
$logPath = "C:\path\to\logs\"Invoke-Command -ComputerName $computers -ScriptBlock {param($logPath)$computerName = $env:COMPUTERNAMEGet-EventLog -LogName System -Newest 100 | Export-Csv -Path "$logPath\$computerName-SystemLog.csv" -NoTypeInformation
} -ArgumentList $logPath

6. 批量创建用户

假设你需要在多台主机上创建相同的用户,可以使用以下脚本:

$computers = Get-Content -Path "C:\path\to\hosts.txt"
$username = "newuser"
$password = ConvertTo-SecureString -String "P@ssw0rd" -AsPlainText -ForceInvoke-Command -ComputerName $computers -ScriptBlock {param($username, $password)New-LocalUser -Name $username -Password $password -FullName "New User" -Description "New User Account"
} -ArgumentList $username, $password

注意事项

  1. 权限:确保你有足够的权限在目标主机上执行这些操作。
  2. 网络:确保目标主机在网络中可达,并且防火墙规则允许远程管理。
  3. 日志:在执行批量操作时,建议记录日志以便于后续审计和故障排除。

以上就是为大家举得一些基本的小例子,通过这些脚本和方法,你可以高效地批量管理多台主机。希望这些示例对你有所帮助!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/59035.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何监控员工上网行为?实现精准监控员工上网行为的5个妙招分享!(企业:稳了!)

如何监控员工上网行为? 员工上班时的"摸鱼"行为员工上网行为(做与工作无关的活动,如浏览社交媒体、游戏、网购等),不仅影响工作效率,还可能破坏团队氛围,阻碍企业发展。 那么&#…

迷茫内耗的一天

迷茫的一天 今天看了看动态规划,不知不觉看了三四个小时,英语也没背,项目也已经停止了一个星期就看了几个小时的xml文件(不停ctrlB),好累,感觉要学的好多。这难道是必经之路吗? 一个星期算法已经刷了40道题…

Allegro: 开源的高级视频生成模型

我们很高兴地宣布 Allegro 的开源发布,这是 Rhymes AI 先进的文本到视频模型。Allegro 是一款功能强大的人工智能工具,能将简单的文字提示转化为高质量的视频短片,为人工智能生成视频领域的创作者、开发者和研究人员开辟了新的可能性。我们希…

<项目代码>YOLOv8 猫狗识别<目标检测>

YOLOv8是一种单阶段(one-stage)检测算法,它将目标检测问题转化为一个回归问题,能够在一次前向传播过程中同时完成目标的分类和定位任务。相较于两阶段检测算法(如Faster R-CNN),YOLOv8具有更高的…

「Mac畅玩鸿蒙与硬件21」鸿蒙UI组件篇11 - Canvas 组件的静态进阶应用

在鸿蒙应用开发中,Canvas 组件不仅用于基础绘图,还提供了处理复杂路径和渐变效果的多种手段,帮助开发者实现精美的静态图形。本篇将介绍如何在 Canvas 中绘制复杂路径、创建渐变填充效果。 关键词 Canvas 组件复杂路径绘制渐变填充一、Canvas 的复杂路径绘制 Canvas 提供了…

Java 用户随机选择导入ZIP文件,解压内部word模板并入库,Windows/可视化Linux系统某麒麟国防系统...均可适配

1.效果 压缩包内部文件 2.依赖 <!--支持Zip--><dependency><groupId>net.lingala.zip4j</groupId><artifactId>zip4j</artifactId><version>2.11.5</version></dependency>总之是要File类变MultipartFile类型的 好像是…

mint-ui Picker 显示异常

mint-ui Picker 显示异常 现象 最近一个老项目页面显示异常&#xff0c;使用mint-ui Picker显示异常,直接显示成了 数据对象&#xff0c;而不是具体travelName 字段 组件 mint-ui Picker 使用方式(vue方式) // template <mt-picker :slots"slots" value-key…

【重生之我要苦学C语言】深入理解指针2

深入理解指针2 const修饰指针 当const修饰变量时&#xff0c;是无法更该该变量的值的 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> int main() {const int a 10;//const常属性&#xff0c;不能改变的属性a 1;printf("%d\n", a);return 0; }报错&…

TVM前端研究--Pass

文章目录 TVM 中 Pass 分类Pass Infrastructure后端主要数据结构前端数据结构Pass 注册机制注册流程AI 编译器一般采用多级 IR 的架构来处理深度学习模型,不同级别的 IR 包含不同层级的信息。比如,越靠近前端的 IR 一般不包含硬件的信息,越靠近后端,IR 所含信息则与硬件愈相…

半参数模型

4. 半参数模型 (Semi-parametric Model) 半参数模型结合了参数化和非参数化的方法。可以在整体上采用线性回归&#xff0c;但在局部允许非线性变化。这样做的目的是在保持模型的线性解释性的同时&#xff0c;捕捉细微的弧度趋势。 例如&#xff0c;可以定义&#xff1a; y …

终于弄懂了Python字符串的操作

字符串的操作 在 Python 中&#xff0c;字符串不仅是存储文本的工具&#xff0c;还提供了多种操作来处理和管理这些文本数据。通过掌握字符串的各种操作&#xff0c;程序员可以更加灵活地处理信息&#xff0c;实现不同的需求。以下将详细介绍字符串的常见操作&#xff0c;包括…

LInux系统编程(二)操作系统和进程

目录 一、前言&#xff1a;冯诺依曼体系结构 1、图中各个单元的介绍 2、值得注意的几点 二、操作系统 1、操作系统分层图 2、小总结 三、 进程&#xff08;重点&#xff09; 1、进程的基本概念 2、存放进程信息的数据结构——PCB&#xff08;Linux 下称作 task_struct…

加法电路和减法电路

一、加法电路 下边为加法电路的拓扑结构 加法电路作用1: 直流量叠加 如上图仿真所示,利用放大器LM324AD进行加法电路的仿真,输入为直流+1V和直流+2V,经过加法运算,根据上边Uo的计算公式进行计算,可得Uo=-3V,和仿真结果保持一致。如下图所示。 加法电路作用2: 信号叠加…

Kafka系列之:对做了条带划分的Kafka节点磁盘实现扩容的技术方案

Kafka系列之:对做了条带划分的Kafka节点磁盘实现扩容的技术方案 一、查看磁盘条带扩容情况二、查看逻辑卷及其关联的物理卷和逻辑卷快照三、显示文件系统磁盘空间使用情况及文件系统类型四、对每块盘扩容五、更改物理卷的大小六、扩展逻辑卷七、扩展XFS文件系统的大小八、扩容…

8. 数据结构——邻接表、邻接矩阵的基本操作

一、邻接表 1. 内容 2. 实现代码(直接可以复制使用) //邻接表的相关操作 #include<bits/stdc.h> #define MVnum 100 #define OK 1 #define ERROR -1 using namespace std;typedef int Status; typedef char VerTexType; //假设顶点的数据类型为char typedef int ArcT…

自动化研磨领域的革新者:半自动与自动自磨机的技术突破

据QYResearch调研团队最新报告“全球半自动和自动自磨机市场报告2023-2029”显示&#xff0c;预计2029年全球半自动和自动自磨机市场规模将达到5.3亿美元&#xff0c;未来几年年复合增长率CAGR为3.5%。 图00001. 半自动和自动自磨机&#xff0c;全球市场总体规模 如上图表/数据…

基于RFID的智能门禁系统的设计(论文+源码)

1系统总体设计 本次基于RFID的智能门禁系统的设计与实现课题&#xff0c;在功能上设计如下&#xff1a; 1.可以通过RFID模块&#xff0c;实现对IC卡的注册&#xff0c;注销操作&#xff1b; 2.在IC卡解锁时&#xff0c;如果非注册IC卡刷卡时蜂鸣器将报警提示&#xff1b; 3…

CAD图纸防泄密|哪些措施可以加密公司图纸?五个宝藏方法分享,2024必读!

在工程设计领域&#xff0c;CAD图纸作为企业的核心资产&#xff0c;其安全性至关重要。一旦图纸泄露&#xff0c;不仅可能给企业带来重大的经济损失&#xff0c;还可能损害企业的声誉和竞争力。 那么&#xff0c;怎么实现CAD图纸防泄密呢&#xff1f; 以下是五个CAD图纸防泄密…

Ubuntu:docker 安装和使用

本文将介绍在 Ubuntu 上安装和使用 docker 的方法和 bash 命令。 一、安装 sudo apt update sudo apt install docker.io二、启动 sudo systemctl start docker sudo systemctl enable docker三、下载 sudo docker pull registry.cn-hangzhou.aliyuncs.com/......四、运行 …

element-plus版本过老,自写选项弹框增删功能

title: element-plus版本过老&#xff0c;自写选项弹框增删功能 date: 2024-10-31 10:53:18 tags: element-plus 1.情景 发现代码怎么都用不了el-select的#footer插槽从而实现不了相关的操作&#xff0c;发现el-select自带的管理相关数据的属性popper-class用不了。 2.原因与…