国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PowerShell > 正文

Windows Powershell 定義函數

2020-03-26 19:13:11
字體:
來源:轉載
供稿:網友

函數是自定義的Powershell代碼,有三個原則:
簡短:函數名簡短,并且顯而易見。
聚合:函數可以完成多個操作。
封裝和擴展:將一批Powershell語句進行封裝,實現全新的功能需求。

函數的結構由三部分組成:函數名,參數,函數體

 

復制代碼 代碼如下:

Function FuncName (args[])
{
      code;
}

 

使用函數作為別名

假如Powershell不支持”cd..” 命令,你可以通過定義函數實現這個功能:

 

復制代碼 代碼如下:

PS C:Powershell> Function cd.. { cd ..}
PS C:Powershell> cd..
PS C:>

 

假如Powershell不支持Ping命令,也可以如法炮制:

 

復制代碼 代碼如下:

PS C:PowerShell> Function Ping2 { PING.EXE  -n 1 $args }
PS C:PowerShell> Ping2 www.mossfly.com

 

正在 Ping mossfly.com [116.255.205.70] 具有 32 字節的數據:
請求超時。

116.255.205.70 的 Ping 統計信息:
    數據包: 已發送 = 1,已接收 = 0,丟失 = 1 (100% 丟失),

 

控制臺上多行輸入定義函數

 

復制代碼 代碼如下:

PS C:PowerShell> Function MyPing
>> {
>> PING.EXE  -n 1 $args
>> }
>>
PS C:PowerShell>

 

把函數精簡成一行

你 可以將一個函數定義在一行上,但是這樣閱讀和理解起來就不方便,可以在每條命令后加分號進行分割。

 

復制代碼 代碼如下:

PS C:PowerShelltest> Function cd...{ cd.. ; cd.. }
PS C:PowerShelltest> cd...
PS C:>

 

使用文本編輯器

函數可以在文本編輯器上編寫,寫完以后復制進Powershell控制臺即可。如果控制臺設置為快速編輯模式,從記事本復制后,直接在控制臺鼠標右鍵即可完成黏貼。

更新函數

如果要更新已經定義好的函數,簡單的方法是重新定義,這樣新的定義會覆蓋舊的定義。但是如果函數代碼沒有保存副本,可以先將函數定義導出到ps文件,然后就可以編輯了。

 

復制代碼 代碼如下:

PS C:PowerShell> $function:MyPing | Out-File myPing.ps1
PS C:PowerShell> $function:MyPing

 

PING.EXE  -n 1 $args

PS C:PowerShell> $function:MyPing | Out-File myPing.ps1
PS C:PowerShell> .myPing.ps1
必須指定 IP 地址。
PS C:PowerShell> notepad.exe $$

 

刪除函數

控制臺定義的函數只會在當前會話生效,一旦控制臺退出,會自動消失。在不關閉控制臺的條件下刪除一個已經定義好的函數,可是使用虛擬驅動器的方法:

 

復制代碼 代碼如下:

PS C:PowerShell> del Function:myPing
PS C:PowerShell> myPing
無法將“myPing”項識別為 cmdlet、函數、腳本文件或可運行程序的名稱。請檢查名稱的
拼寫,如果包括路徑,請確保路徑正確,然后重試。
所在位置 行:1 字符: 7
+ myPing <<<<
    + CategoryInfo          : ObjectNotFound: (myPing:String) [], CommandNotFo
   undException
    + FullyQualifiedErrorId : CommandNotFoundException

 

Suggestion [3,General]: 未找到命令 myPing,但它確實存在于當前位置。Windows Pow
Shell 默認情況下不從當前位置加載命令。如果信任此命令,請改為鍵入 ".myPing"。有
關更多詳細信息,請參閱 "get-help about_Command_Precedence"。

 

 
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 深州市| 榆中县| 克拉玛依市| 应用必备| 沙河市| 南靖县| 扬中市| 汝城县| 安达市| 乌苏市| 长葛市| 瓦房店市| 山丹县| 万全县| 临安市| 德安县| 盘山县| 北辰区| 天峻县| 马鞍山市| 霞浦县| 定兴县| 乌鲁木齐县| 鸡东县| 中西区| 屏南县| 大足县| 西乌珠穆沁旗| 南昌县| 柘荣县| 郓城县| 潜山县| 闵行区| 南部县| 林芝县| 宣化县| 弋阳县| 白城市| 楚雄市| 榆树市| 台州市|