自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

PowerShell入門(六):遠(yuǎn)程操作

系統(tǒng) Windows
一般來說PowerShell遠(yuǎn)程操作依賴于遠(yuǎn)程處理基礎(chǔ)結(jié)構(gòu),但為數(shù)不多的幾個自身具有遠(yuǎn)程處理能力的命令除外,如Get-Service、Get-Process、Get-WMIObject、Get-EventLog和Get-WinEvent等。本文主要帶您了解PowerShell遠(yuǎn)程配置和操作。

  PowerShell遠(yuǎn)程操作是遠(yuǎn)程管理的基礎(chǔ),它為集中管理分布式系統(tǒng)提供了又一種可靠、高效的方法。

  一般來說PowerShell遠(yuǎn)程操作依賴于遠(yuǎn)程處理基礎(chǔ)結(jié)構(gòu),但為數(shù)不多的幾個自身具有遠(yuǎn)程處理能力的命令除外,如Get-Service、Get-Process、Get-WMIObject、Get-EventLog和Get-WinEvent等。(不難看出,這些命令都是“讀取”系統(tǒng)的某些方面的信息,不做更改。它們依賴.Net Framework完成遠(yuǎn)程操作。)

專題推薦:PowerShell入門知識匯總

  配置遠(yuǎn)程基礎(chǔ)結(jié)構(gòu)

  遠(yuǎn)程基礎(chǔ)結(jié)構(gòu)是遠(yuǎn)程操作的基礎(chǔ),正確設(shè)置遠(yuǎn)程基礎(chǔ)結(jié)構(gòu)才能使遠(yuǎn)程命令正確執(zhí)行。好在遠(yuǎn)程基礎(chǔ)結(jié)構(gòu)雖然重要,但是配置起來非常簡單。實際上,只要設(shè)置好以下兩點就可以進(jìn)行遠(yuǎn)程操作了:

  1、以管理員身份運行。要進(jìn)行遠(yuǎn)程操作,必須以管理員身份啟動PowerShell命令行,即使當(dāng)前用戶是系統(tǒng)管理員也要如此。

  2、啟用遠(yuǎn)程處理模式。啟用遠(yuǎn)程處理模式之后,依賴遠(yuǎn)程基礎(chǔ)結(jié)構(gòu)的命令才能正確執(zhí)行。啟用遠(yuǎn)程處理模式請使用enable-psremoting命令。有的系統(tǒng)默認(rèn)已經(jīng)開啟了遠(yuǎn)程處理模式,檢查遠(yuǎn)程處理模式是否啟動,可以執(zhí)行new-pssession命令。如果新的會話成功創(chuàng)建,則說明遠(yuǎn)程模式啟動,遠(yuǎn)程基礎(chǔ)結(jié)構(gòu)配置成功。

  執(zhí)行遠(yuǎn)程操作

  配置好遠(yuǎn)程基礎(chǔ)結(jié)構(gòu),就可以執(zhí)行遠(yuǎn)程操作了。遠(yuǎn)程操作主要依賴幾個Session(會話)命令和Invoke-Command命令來進(jìn)行。常見的使用情況有三種場景:

  場景一:遠(yuǎn)程交互式會話

  這個場景一般用于手動進(jìn)行遠(yuǎn)程操作,輸入命令,查看結(jié)果。方法很簡單。進(jìn)入交互式會話的命令是Enter-PSSession,退出時鍵入Exit-PSSession或者exit都可以。遠(yuǎn)程交互式操作期間,輸入的命令在遠(yuǎn)程計算機上運行,就像直接在遠(yuǎn)程計算機上輸入并執(zhí)行這些命令一樣。期間所定義的變量和命令的執(zhí)行結(jié)果在退出交互式會話之后不再可用。

  場景二:腳本塊、腳本文件的一次性執(zhí)行

  這種場景,是在本地計算機與遠(yuǎn)程計算機上建立一個臨時會話。將腳本塊或者腳本文件的內(nèi)容發(fā)送到遠(yuǎn)程計算機執(zhí)行,并將結(jié)果發(fā)回本地計算機。這種方法執(zhí)行效率很高,是PowerShell推薦的執(zhí)行遠(yuǎn)程命令的方法。除非需要在會話中共享數(shù)據(jù),否則建議使用該方法。

場景三:腳本塊、腳本文件在命名會話中執(zhí)行

  這種場景是最復(fù)雜的,也是功能***大的。會話會保持所有定義的變量、函數(shù)和腳本,導(dǎo)入的模塊和管理單元,有利于共享數(shù)據(jù)。使用方法如下:

  1、定義會話: 請使用new-pssession命令定義會話,如$session1 = new-pssession –computer server1。(如果必要請使用Credential參數(shù)。)

  2、在會話中遠(yuǎn)程執(zhí)行腳本(或者腳本文件): 請使用Invoke-Command命令執(zhí)行遠(yuǎn)程腳本,如Invoke-Command -Session $session1 -ScriptBlock {dir c:\}或者Invoke-Command -Session $session1 -FilePath .\dirDriveC.ps1

  3、獲得結(jié)果: 可以將執(zhí)行結(jié)果賦于變量,如$sub = Invoke-Command -Session $session1 -ScriptBlock {dir c:\}或者$sub = Invoke-Command -Session $session1 -FilePath .\dirDriveC.ps1

  后續(xù)命令可參照步驟2或者3繼續(xù)執(zhí)行,所有執(zhí)行的命令就好像在同一個上下文中執(zhí)行一樣。

  結(jié)語

  網(wǎng)絡(luò)時代的Shell或者腳本語言必須具有很強的網(wǎng)絡(luò)處理能力,PowerShell就是這樣的語言。微軟的產(chǎn)品一般來說將安全性看得很重,所以PowerShell在網(wǎng)絡(luò)處理方面有諸多限制。比如PowerShell不能在遠(yuǎn)程機器上顯示界面,即使是有界面的程序,也只能在后臺運行。熊掌和魚肉不可兼得,好在我們總能找到一些解決辦法。比如上述問題可以借助微軟的PsExec工具來實現(xiàn),詳細(xì)信息見Windows Sysinternals.

責(zé)任編輯:黃丹 來源: 博客園
相關(guān)推薦

2013-02-18 08:31:30

powershell

2013-02-18 08:15:35

powershell

2013-02-18 08:36:51

powershell

2013-02-18 08:34:45

powershell

2012-09-20 10:08:17

PowerShell

2013-02-21 17:54:12

PowerShell入PowerShell命

2013-02-28 11:25:05

PowerShell入

2014-06-06 13:59:52

服務(wù)器管理員PowerShell

2010-12-27 16:32:23

Windows Pow

2014-03-03 10:26:17

PowerShell

2013-02-18 08:39:15

powershell

2021-07-15 06:34:07

Zabbix監(jiān)控Windows

2023-09-05 07:04:51

PowerShell運維

2010-01-11 19:21:57

2010-05-25 18:29:30

MySQL遠(yuǎn)程訪問

2016-08-08 08:26:01

WindowsMac操作桌面

2017-02-05 14:52:42

2021-10-09 10:00:52

遠(yuǎn)程招聘技巧招聘

2012-03-29 09:50:17

2023-12-20 07:12:00

PowerShellCmdletNamed類型
點贊
收藏

51CTO技術(shù)棧公眾號