今回は、PowerShell上に登録された自作関数を削除する方法を紹介します。
現在、このブログ上で「SQL*PLUSもどきを作る」を連載しているわけですが、これからDisconnect関数を作ろうと思います。
SQL*PLUSもどきを作る その1(PowerShell Tips)SQL*PLUSもどきを作る その1の説明(PowerShell Tips)SQL*PLUSもどきを作る その2(PowerShell Tips)SQL*PLUSもどきを作る その3(PowerShell Tips) SQL*PLUSもどきを作る その4(PowerShell Tips) SQL*PLUSもどきを作る その5(PowerShell Tips) SQL*PLUSもどきを作る その6(PowerShell Tips)
その1で紹介したPSOracle関数は、動的に関係する関数を読み込むようにしてあります。
このため、PSOracle関数が実行されると、Oracle関連の関数が起動しているPowerShellに登録されることになります。
Disconnectを実行したときには、これらの関数やグローバル変数を削除したいと思っています。
調べた結果、登録された自作関数の削除には Remove-Item コマンドレットを使用すればよいことがわかりました。
ということで、本当にRemove-Itemコマンドレットを使用すれば関数を削除することができるのかを、実験してみたいと思います。
まずは、下記のように入力して、2つの値を加算する関数Addを作成します。
PS C:\Work> function Add{ $args[0]+$args[1]}
コマンドラインで、dir function: 入力すると関数の一覧を取得できます。
今作成した Add 関数があることがわかります。
PS C:\Work> dir function: CommandType Name Definition ----------- ---- ---------- Function prompt 'PS ' + $(Get-Location) + $(if ($... Function TabExpansion ... Function Clear-Host $spaceType = [System.Management.A... Function more param([string[]]$paths); if(($pa... Function help param([string]$Name,[string[]]$Ca... Function man param([string]$Name,[string[]]$Ca... Function mkdir param([string[]]$paths); New-Item... Function md param([string[]]$paths); New-Item... Function A: Set-Location A: Function B: Set-Location B: : :長いので省略 : Function Add $args[0]+$args[1]
では、実際にRemove-Itemコマンドレットを使用して Add 関数を削除してみたいと思います。
下記のように Remove-Item function:削除する関数名 とします
PS C:\Work> Remove-Item function:Add
本当に削除されたかを確認するために、再度dirコマンドを入力します。
PS C:\Work> dir function: CommandType Name Definition ----------- ---- ---------- Function prompt 'PS ' + $(Get-Location) + $(if ($... Function TabExpansion ... Function Clear-Host $spaceType = [System.Management.A... Function more param([string[]]$paths); if(($pa... Function help param([string]$Name,[string[]]$Ca... Function man param([string]$Name,[string[]]$Ca... Function mkdir param([string[]]$paths); New-Item... Function md param([string[]]$paths); New-Item... Function A: Set-Location A: Function B: Set-Location B: : :長いので省略 : Function Z: Set-Location Z:
このように、Remove-Itemコマンドレットを使用することで 関数を削除することができます。
Theme design by Jelle Druyts
Pick a theme: BlogXP business calmBlue Candid Blue dasBlog dasblogger DirectionalRedux Discreet Blog Blue Elegante essence Just Html MadsSimple Mobile Mono Movable Radio Blue Movable Radio Heat nautica022 orangeCream Portal Project84 Project84Grass Slate Sound Waves Tricoleur useit.com Voidclass2 BlogXP business calmBlue Candid Blue dasBlog dasblogger DirectionalRedux Discreet Blog Blue Elegante essence Just Html MadsSimple Mobile Mono Movable Radio Blue Movable Radio Heat nautica022 orangeCream Portal Project84 Project84Grass Slate Sound Waves Tricoleur useit.com Voidclass2
Powered by: newtelligence dasBlog 2.0.7226.0
The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.
© Copyright 2009, HIRO
E-mail