探索PowerShell (二) PowerShell的基本操作
PowerShell控制臺(tái)
打開(kāi)PowerShell,顯示如下界面:
命令提示符前綴為:
PS C:\Users\MaRui>
PS的意思為正在運(yùn)行PowerShell中,而C:則是我的主目錄驅(qū)動(dòng)器號(hào),不同機(jī)器會(huì)有所不同。
最最最基本的操作與cmd、dos、sh等相同。
cmdlet命令
雖然有超過(guò)一百條新的PowerShell命令需要去學(xué)習(xí),但是,與大多數(shù)命令行界面一樣,PowerShell命令已經(jīng)被標(biāo)準(zhǔn)化。它使用“動(dòng)詞-名詞”的命名形式作為一個(gè)cmdlet命令。該標(biāo)準(zhǔn)大大降低了學(xué)習(xí)難度,并且對(duì)所有cmdlet命令提供了更好的描述性幫助。
要查看當(dāng)前PowerShell中所有的cmdlet,使用如下命令:
get-command <enter>
接下來(lái),讓我們使用特定的動(dòng)詞列出所有的命令。下面是使用動(dòng)詞"Get“篩選后的cmdlet:
get-command -Verb Get <enter>
其他命令同樣可以使用這種篩選方法。這樣子組合之后,上百條命令就很好記憶了。
簡(jiǎn)單舉例其他基本常用命令:
get-help <enter>
get-help * <enter>
get-service <enter>
get-help get-service <enter>
試試下列按鍵吧,看看會(huì)發(fā)生什么:
Page Up - 跳轉(zhuǎn)到歷史緩沖區(qū)中的第一個(gè)命令。
Page Down - 跳轉(zhuǎn)到歷史緩沖區(qū)中的最后一個(gè)命令。
UpArrow - 向后顯示歷史緩沖區(qū)命令。
DownArrow - 向進(jìn)顯示歷史緩沖區(qū)命令。
Home - 跳躍到命令行的開(kāi)頭。
End - 跳躍到命令行的末尾。
Ctrl + LeftArrow - 到最左側(cè)字符。
Ctrl + RightArrow - 到右側(cè)單詞結(jié)尾。
Tab - 完成輸入(在控制臺(tái)中鍵入GET - C和按TAB鍵,再按下Tab試試)。
F7鍵 - 顯示歷史緩沖區(qū)(使用向上和向下箭頭鍵來(lái)瀏覽緩沖區(qū))。
或者在別的窗口復(fù)制一段文字,在PowerShell上按鼠標(biāo)右鍵試試,類似于sh下的鼠標(biāo)中鍵的作用。
在PowerShell命令中,還有一類被稱之為“原生窗口命令”。例如我們可以從PowerShell命令行啟動(dòng)services.msc的GUI窗口。
services.msc <enter>
既然我們使用PowerShell,那么就可以無(wú)視services.msc了。
下列是對(duì)服務(wù)進(jìn)行操作的命令<以Brower服務(wù)為例>:
get-service -name Browser <enter>
stop-service -name Browser <enter>
get-service -name Browser <enter>
需要注意的是:在使用cmdlet停止服務(wù)時(shí)不會(huì)有任何跡象來(lái)向用戶告知該服務(wù)已經(jīng)成功停止的。
同樣,啟動(dòng)服務(wù)命令:
start-service -name Browser <enter>
啟動(dòng)服務(wù)后也不會(huì)有任何反饋性跡象表明服務(wù)正常啟動(dòng),除非服務(wù)啟動(dòng)失敗。
這一段的命令就簡(jiǎn)單介紹到這里,是不是很簡(jiǎn)單?只需要記著“動(dòng)詞-名詞”這一形式就可以了!
下面貼出PowerShell中的基本運(yùn)算語(yǔ)法示例
PS C:\> 99 + 100
199
在PowerShell中,可以非常簡(jiǎn)單的進(jìn)行數(shù)學(xué)運(yùn)算,你所要做的僅僅是輸入表達(dá)式這么簡(jiǎn)單,結(jié)果就會(huì)自動(dòng)輸出,在此過(guò)程中不需要使用其他shell中的打印語(yǔ)句等,運(yùn)算結(jié)束后得到的執(zhí)行結(jié)果也不會(huì)被隨意丟棄掉,而是直接輸出,往后我們會(huì)學(xué)習(xí)如何將結(jié)果進(jìn)行丟棄。
PS C:\> "Hello World!"
Hello World!
"Hello World”,就像上面的數(shù)學(xué)計(jì)算,直接輸入字符串即可。使用過(guò)Perl腳本的會(huì)覺(jué)得這里很熟悉,因?yàn)镻owerShell很大程度上借鑒了Perl的優(yōu)點(diǎn)。
PS C:\> (7 - 2 * 3) / 5
0.2
對(duì)于四則混合運(yùn)算,PowerShell也能很好的支持。在表達(dá)式中可以使用( )來(lái)調(diào)整運(yùn)算符的優(yōu)先級(jí)和結(jié)合性。需要注意的是,PowerShell支持若干種不同的數(shù)據(jù)類型,例如:int、float、double等等。往后我們會(huì)接觸到類型轉(zhuǎn)換等內(nèi)容。
PS C:\> (2+2)*3/7 > c:\fun.txt
PS C:\> type c:\fun.txt
1.71428571428571
同樣,除了屏幕輸出外,我們可以將結(jié)果存儲(chǔ)到臨時(shí)文件,然后使用type命令將文件的結(jié)果取回。
PS C:\> $n = (2+2)*3
PS C:\> $n
12
PS C:\> $n / 7
1.71428571428571
另外,我們還可以通過(guò)對(duì)變量賦值,將運(yùn)算結(jié)果存儲(chǔ)到變量中,并使用該變量進(jìn)行后續(xù)的計(jì)算。
PS C:\> $files = dir
PS C:\> $files[3]PS C:\> $files = dir
PS C:\> $files[3]
Directory: Microsoft.PowerShell.Core\FileSystem::C:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
d-r-- 2010-3-26 21:25 Program Files
作為一個(gè)面向?qū)ο蟮恼Z(yǔ)言,我們可以簡(jiǎn)單的將命令返回的結(jié)果賦值給變量。這里的$files中包含了目前所處目錄下的目錄項(xiàng)的對(duì)象集合,使用普通數(shù)組訪問(wèn)語(yǔ)法就可以獲得該位置的對(duì)象。例子中顯示了Program Files目錄。注意:PowerShell中的數(shù)組下標(biāo)是從0開(kāi)始的,這點(diǎn)與.Net Common Language Runtime完全一致。
這一節(jié)就到這里。有興趣的童鞋可以繼續(xù)關(guān)注下一節(jié)內(nèi)容。
相關(guān)文章
PowerShell函數(shù)參數(shù)設(shè)置成自動(dòng)識(shí)別數(shù)據(jù)類型的例子
這篇文章主要介紹了PowerShell函數(shù)參數(shù)設(shè)置成自動(dòng)識(shí)別數(shù)據(jù)類型的例子,這個(gè)方法可以很方便的使用參數(shù)集,而不用每次指定名稱,需要的朋友可以參考下2014-07-07PowerShell實(shí)現(xiàn)在控制臺(tái)中插入綠色的打勾符號(hào)
這篇文章主要介紹了PowerShell實(shí)現(xiàn)在控制臺(tái)中插入綠色的打勾符號(hào),本文重點(diǎn)的過(guò)分如何輸出個(gè)一個(gè)特殊字符以及如何輸出一個(gè)有顏色的字符,需要的朋友可以參考下2015-06-06Windows Powershell調(diào)用靜態(tài)方法
Powershell將信息存儲(chǔ)在對(duì)象中,每個(gè)對(duì)象都會(huì)有一個(gè)具體的類型,簡(jiǎn)單的文本會(huì)以System.String類型存儲(chǔ),日期會(huì)以System.DateTime類型存儲(chǔ)。任何.NET對(duì)象都可以通過(guò)GetType()方法返回它的類型,該類型中有一個(gè)FullName屬性,可以查看類型的完整名稱。2014-09-09探索PowerShell (四) PowerShell的對(duì)象、格式與參數(shù)
本節(jié)將要給大家介紹一下PowerShell下的對(duì)象,基本格式以及參數(shù)。依然屬于PowerShell的基礎(chǔ)2012-12-12PowerShell入門(mén)教程之訪問(wèn).Net程序集、COM和WMI實(shí)例
這篇文章主要介紹了PowerShell入門(mén)教程之訪問(wèn).Net程序集、COM和WMI實(shí)例,本文講解了PowerShell作為Windows平臺(tái)的脫水語(yǔ)言來(lái)訪問(wèn)其它資源的例子,需要的朋友可以參考下2014-10-10PowerShell中使用Get-EventLog讀取、篩選系統(tǒng)日志的例子
這篇文章主要介紹了PowerShell中使用Get-EventLog讀取、篩選系統(tǒng)日志的例子,比如按日志名稱、日志類型、時(shí)間的技巧,需要的朋友可以參考下2014-08-08簡(jiǎn)單談?wù)凱owerShell 4.0中的新命令
powershell 4.0都出來(lái)那么長(zhǎng)時(shí)間了,相對(duì)于powershell 3.0,它的命令都改變了哪些,有哪些更新呢?下面我們就來(lái)詳細(xì)談?wù)勂渲械?0個(gè)新命令2015-09-09PowerShell創(chuàng)建Byte數(shù)組例子
這篇文章主要介紹了PowerShell創(chuàng)建Byte數(shù)組例子,Byte數(shù)組即字節(jié)數(shù)組,它是一種強(qiáng)類型的數(shù)組,需要的朋友可以參考下2014-08-08