Powershell-远程操作

1. 查看WinRM是否开启

 Get-Service WinRM

2. Enable-PSRemoting –Force

3. 进行信任设置:

Set-Item wsman:\localhost\client\trustedhosts *

Restart-Service WinRM

4. 测试远程连接

Test-WsMan xxx.xxx.xxx.xxx

5. 建立连接

Enter-PSSession -ComputerName my-svr -Credential nickli

 

创建凭证

 

$Username = 'zhnaghao'

$Password = 'mima'

$pass = ConvertTo-SecureString -AsPlainText $Password -Force

$Cred = New-Object System.Management.Automation.PSCredential -ArgumentList $Username,$pass

 

进入会话

$Username = 'zhnaghao'

$Password = 'mima'

$pass = ConvertTo-SecureString -AsPlainText $Password -Force

$Cred = New-Object System.Management.Automation.PSCredential -ArgumentList $Username,$pass

Enter-PSSession -ComputerName SDSVD13 -Credential $Cred

 

退出会话

Exit-PSSession

 

执行单条命令:

$Username = 'zhnaghao'

$Password = 'mima'

$pass = ConvertTo-SecureString -AsPlainText $Password -Force

$Cred = New-Object System.Management.Automation.PSCredential -ArgumentList $Username,$pass

Invoke-Command -ComputerName SDSVD13 -ScriptBlock {  [System.Net.DNS]::GetHostByName('').HostName

 } -credential $Cred 

 

远程执行脚本

$Username = 'zhnaghao'

$Password = 'mima'

$pass = ConvertTo-SecureString -AsPlainText $Password -Force

$Cred = New-Object System.Management.Automation.PSCredential -ArgumentList $Username,$pass

Invoke-Command -computername sdsvd13 -FilePath C:\Users\SDSADMIN\Desktop\Powershell\NEW\hostname.ps1  -credential $Cred 

远程返回结果复制给变量

$Username = 'zhnaghao'

$Password = 'mima'

$pass = ConvertTo-SecureString -AsPlainText $Password -Force

$Cred = New-Object System.Management.Automation.PSCredential -ArgumentList $Username,$pass

$mySession = new-PSSession -ComputerName SDSVD13 -Credential $Cred

$sub = Invoke-Command -Session $mySession -ScriptBlock {[System.Net.DNS]::GetHostByName('').HostName}

$sub

posted @ 2019-04-22 08:46  JinweiChang  阅读(278)  评论(0编辑  收藏  举报