PowerShell能干什么呢?就像序言中提到的那樣,PowerShell首先是個Shell,定義好了一堆命令與操作系統(tǒng),特別是與文件系統(tǒng)交互,能夠啟動應用程序,甚至操縱應用程序;第二,PowerShell允許將幾個命令組合起來放到文件里執(zhí)行,實現(xiàn)文件級的重用,也就是說有腳本的性質(zhì);第三,PowerShell能夠能夠充分利用.Net類型和COM對象,來簡單地與各種系統(tǒng)交互,完成各種復雜的、自動化的操作。
一、與文件系統(tǒng)交互、運行應用程序
就像在Dos中一樣,在PowerShell的交互界面上鍵入"dir"并回車,會顯示當前文件夾下的子文件夾和文件信息。
代碼如下:
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 ..等等。從這里看來它就是一個命令行,實現(xiàn)了原來命令行的功能。但PowerShell是命令行的加強版嗎,是命令行的超集嗎?這個真不是,以后會專門說這個問題。
就像在命令行里運行應用程序一樣,可以在PowerShell的交互窗口中運行應用程序,如下:
代碼如下:
PS C:/Users/v-lukez> notepad
PS C:/Users/v-lukez>
如果想更好地控制應用程序,可以使用start命令,如下:
代碼如下:
PS C:/Users/v-lukez> start notepad -WindowStyle Maximized
PS C:/Users/v-lukez>
以上結(jié)果可以實現(xiàn)Notepad窗口的最大化。其實類似的命令還有很多,而且更多的參數(shù)意味著更精細地控制。
二、創(chuàng)建腳本
任務的自動化是以程序文件或者可執(zhí)行腳本文件為基礎的,PowerShell也支持將命令列表做成腳本文件來執(zhí)行。以下是Hello.ps1腳本文件的內(nèi)容:
代碼如下:
$a = "Hello"
$a
echo $a > a.txt
dir a.txt
Hello.ps1腳本文件的執(zhí)行情況結(jié)果如下:
新聞熱點
疑難解答
圖片精選