首页 > 代码库 > 远程执行脚本
远程执行脚本
1 #######################################定义变量######################################################### 2 $CurrentPath = $MyInvocation.MyCommand.Path.substring(0,$MyInvocation.MyCommand.Path.LastIndexOf(‘\‘)+1) 3 #定义服务器列表 4 $server_list = "server_list.txt" 5 $server_list_path = Join-Path $CurrentPath $server_list 6 #定义任务计划输出结果保存文件 7 $task_resultfile = "Task_Result.txt" 8 $task_resultfile_path = Join-Path $CurrentPath $task_resultfile 9 #定义需要执行的脚本名称10 $scriptName = "DNSConfig.ps1"11 $scriptPath = Join-Path $CurrentPath $scriptName12 #定义使用到的用户名和密码13 $UserName = "administrator"14 15 16 #######脚本开始###############################################17 #删除已有的IPC会话连接18 $Null = NET USE * /del /y19 $servers = gc $server_list_path20 foreach ($server in $servers)21 {22 If ( Test-Connection $server -Count 1 -Quiet )23 {24 Write-Host $server -ForegroundColor green25 #获取远程计算机的密码26 27 $UserPass = $serverpass 28 $Password = ConvertTo-SecureString $serverpass -AsPlainText –Force29 $cred = New-Object System.Management.Automation.PSCredential($UserName,$Password)30 cmd /c "NET USE \\$Server $UserPass /user:$UserName >nul 2>nul"31 If ($Lastexitcode -eq 0)32 {33 #远程执行脚本34 $Tresult = invoke-command -ComputerName $server -Credential $cred -FilePath $scriptPath35 36 }37 Else 38 {39 Write-Host "$server 连接失败" -ForegroundColor Red40 $server + "连接失败" |Out-File $task_resultfile_path -Append 41 } 42 43 }44 Else 45 { 46 Write-Host "无法Ping通" -ForegroundColor Red47 $server + "无法Ping通" |Out-File $task_resultfile_path -Append 48 }49 }50 51 52 53 $Null = NET USE * /del /y
远程执行脚本
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。