溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

powershell的作用有哪些

發(fā)布時(shí)間:2023-02-25 09:27:00 來源:億速云 閱讀:150 作者:iii 欄目:開發(fā)技術(shù)

今天小編給大家分享一下powershell的作用有哪些的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識(shí),所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

powershell能干:1、可以與文件系統(tǒng)交互,能夠啟動(dòng)應(yīng)用程序,甚至操縱應(yīng)用程序;2、允許將幾個(gè)命令組合起來放到文件里執(zhí)行,實(shí)現(xiàn)文件級(jí)的重用,也就是說可以創(chuàng)建腳本;3、能夠充分利用.Net類型和COM對(duì)象,來簡(jiǎn)單地與各種系統(tǒng)交互,完成各種復(fù)雜的、自動(dòng)化的操作。

什么是 PowerShell?

PowerShell 是一種跨平臺(tái)的任務(wù)自動(dòng)化解決方案,由命令行 shell、腳本語(yǔ)言和配置管理框架組成。 PowerShell 在 Windows、Linux 和 macOS 上運(yùn)行。

命令行 Shell

PowerShell 是新式命令 shell,其中包括其他常用 shell 的最佳功能。 與大多數(shù)僅接受并返回文本的 shell 不同,PowerShell 接受并返回 .NET 對(duì)象。 shell 包括以下功能:

  • 可靠的命令行歷史記錄

  • Tab 自動(dòng)補(bǔ)全和命令預(yù)測(cè)(請(qǐng)參閱 about_PSReadLine)

  • 支持命令和參數(shù)別名

  • 用于鏈接命令的管道

  • 控制臺(tái)內(nèi)幫助系統(tǒng),類似于 Unix man 頁(yè)面

PowerShell能干什么呢?

PowerShell首先是個(gè)Shell,定義好了一堆命令與操作系統(tǒng),特別是與文件系統(tǒng)交互,能夠啟動(dòng)應(yīng)用程序,甚至操縱應(yīng)用程序;第二,PowerShell允許將幾個(gè)命令組合起來放到文件里執(zhí)行,實(shí)現(xiàn)文件級(jí)的重用,也就是說有腳本的性質(zhì);第三,PowerShell能夠充分利用.Net類型和COM對(duì)象,來簡(jiǎn)單地與各種系統(tǒng)交互,完成各種復(fù)雜的、自動(dòng)化的操作。

一、與文件系統(tǒng)交互、運(yùn)行應(yīng)用程序

  就像在Dos中一樣,在PowerShell的交互界面上鍵入"dir"并回車,會(huì)顯示當(dāng)前文件夾下的子文件夾和文件信息。

PS D:\Projects\Practise\PowerShell> dir
   Directory: D:\Projects\Practise\PowerShell

Mode                LastWriteTime     Length Name
----                -------------     ------ ----
d----         1/23/2013  12:35 PM            d1
d----         1/23/2013  12:35 PM            d2
-a---         1/21/2013   8:38 PM      36314 alias.tx
-a---         1/21/2013   8:32 PM     241530 cmdlets.
-a---         1/18/2013  10:18 AM        888 errors.t

  像這樣的命令很多,比如echo "Hello", cd ..等等。從這里看來它就是一個(gè)命令行,實(shí)現(xiàn)了原來命令行的功能。但PowerShell是命令行的加強(qiáng)版嗎,是命令行的超集嗎?這個(gè)真不是,以后會(huì)專門說這個(gè)問題。

  就像在命令行里運(yùn)行應(yīng)用程序一樣,可以在PowerShell的交互窗口中運(yùn)行應(yīng)用程序,如下:

PS C:\Users\v-lukez> notepad
PS C:\Users\v-lukez>

如果想更好地控制應(yīng)用程序,可以使用start命令,如下:

PS C:\Users\v-lukez> start notepad -WindowStyle Maximized
PS C:\Users\v-lukez>

以上結(jié)果可以實(shí)現(xiàn)Notepad窗口的最大化。其實(shí)類似的命令還有很多,而且更多的參數(shù)意味著更精細(xì)地控制。

二、創(chuàng)建腳本

  任務(wù)的自動(dòng)化是以程序文件或者可執(zhí)行腳本文件為基礎(chǔ)的,PowerShell也支持將命令列表做成腳本文件來執(zhí)行。以下是Hello.ps1腳本文件的內(nèi)容:

$a = "Hello"
$a
echo $a > a.txt
dir a.txt

Hello.ps1腳本文件的執(zhí)行情況結(jié)果如下:

PS E:\> D:\Projects\Practise\PowerShell\Hello.ps1
Hello
   Directory: E:\
Mode                LastWriteTime     Length   Name                                                                      
----                -------------     ------ ----                                                                      
-a---         1/30/2013   4:56 PM         16 a.txt

你可能發(fā)現(xiàn)了,PowerShell腳本文件是以.PS1為擴(kuò)展名的。以上這個(gè)腳本非常簡(jiǎn)單:先定義了一個(gè)變量,然后輸出這個(gè)變量的結(jié)果,再將這個(gè)變量的值寫入文件a.txt,最后輸出這個(gè)文件的屬性信息。僅從這一點(diǎn)看,PowerShell腳本很像Batch文件。但是實(shí)際上,PowerShell可以做得更多。

  PowerShell腳本支持自定義函數(shù),就像我們?cè)诰幊陶Z(yǔ)言中做得那樣。funcDemo.ps1給出了一個(gè)在PowerShell腳本中編寫函數(shù)的示例:

#funcDemo.ps1
function SayHello ($name)
{
   echo "hello $name"
}

SayHello "Luke"

腳本的運(yùn)行結(jié)果是“Hello Luke”。

此外,關(guān)于PowerShell腳本內(nèi)部語(yǔ)句的運(yùn)行順序,這里要做個(gè)簡(jiǎn)單說明:除了函數(shù)定義,腳本中的命令或者函數(shù)調(diào)用(其實(shí)也相當(dāng)于執(zhí)行命令)會(huì)順序執(zhí)行;函數(shù)中的語(yǔ)句只有在函數(shù)被調(diào)用的時(shí)候才會(huì)被執(zhí)行。

三、利用.Net類型和COM對(duì)象

  能夠利用.Net類型和COM對(duì)象是PowerShell的最大特點(diǎn),這讓PowerShell能夠最大限度的利用現(xiàn)有資源,并且很容易把.Net和COM程序員招徠到自己麾下。

  簡(jiǎn)單類型:

[int]$a = 10
[String]$b = 10

  .Net類型

$Message = new-object Net.Mail.MailMessage("me@source.com","you@destination.com", "Subject", 
  "Here is some email")

  COM對(duì)象

$myWord = new-object -comobject Word.Application

  創(chuàng)建了.Net或者COM的對(duì)象以后,就可以利用這些對(duì)象的屬性和方法,來完成更加復(fù)雜的操作。

怎么打開運(yùn)行PowerShell

1、win菜單鍵+R:

powershell的作用有哪些

2、彈出運(yùn)行窗口如下:

powershell的作用有哪些

3、在輸入框輸入PowerShell回車或點(diǎn)擊確定:

powershell的作用有哪些

4、輸入后會(huì)彈出PowerShell命令窗口,恭喜你搞定啦,可以直接在里面輸入命令行使用了,參考如下:

powershell的作用有哪些

以上就是“powershell的作用有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會(huì)為大家更新不同的知識(shí),如果還想學(xué)習(xí)更多的知識(shí),請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI