New-PSSessionConfigurationFile
セッション構成を定義するファイルを作成します。
構文
New-PSSessionConfigurationFile
[-Path] <String>
[-SchemaVersion <Version>]
[-Guid <Guid>]
[-Author <String>]
[-CompanyName <String>]
[-Copyright <String>]
[-Description <String>]
[-PowerShellVersion <Version>]
[-SessionType <SessionType>]
[-ModulesToImport <Object[]>]
[-AssembliesToLoad <String[]>]
[-VisibleAliases <String[]>]
[-VisibleCmdlets <String[]>]
[-VisibleFunctions <String[]>]
[-VisibleProviders <String[]>]
[-AliasDefinitions <Hashtable[]>]
[-FunctionDefinitions <Hashtable[]>]
[-VariableDefinitions <Object>]
[-EnvironmentVariables <Object>]
[-TypesToProcess <String[]>]
[-FormatsToProcess <String[]>]
[-LanguageMode <PSLanguageMode>]
[-ExecutionPolicy <ExecutionPolicy>]
[-ScriptsToProcess <String[]>]
[<CommonParameters>]
説明
コマンドレットは New-PSSessionConfigurationFile
、セッション構成と、セッション構成を使用して作成されたセッションの環境を定義する設定ファイルを作成します。
セッション構成で ファイルを使用するには、 または Set-PSSessionConfiguration
コマンドレットの Path パラメーターをRegister-PSSessionConfiguration
使用します。
作成される New-PSSessionConfigurationFile
セッション構成ファイルは、セッション構成のプロパティと値のハッシュ テーブルを含む人間が判読できるテキスト ファイルです。 ファイルにはファイル名拡張子があります .pssc
。
Path パラメーターをNew-PSSessionConfigurationFile
除き、 のすべてのパラメーターは省略可能です。
パラメーターを省略すると、パラメーターの説明に記載された部分を除き、セッション構成ファイル内の対応するキーがコメント アウトされます。
セッション構成 (エンドポイントとも呼ばれます) は、コンピューターに接続する PowerShell セッション (PSSessions) の環境を定義するローカル コンピューター上の設定のコレクションです。 すべての PSSession では、 セッション構成が使用されます。 特定のセッション構成を指定するには、 コマンドレットなどのセッションを作成するコマンドレットの ConfigurationName パラメーターを New-PSSession
使用します。
session configuration file は、セッション構成の定義をより容易にします。複雑なスクリプトやコード アセンブリは必要ありません。 ファイル内の設定は、オプションのスタートアップ スクリプトと、セッション構成内のすべてのアセンブリと共に使用されます。
セッション構成とセッション構成ファイルの詳細については、「 about_Session_Configurations と about_Session_Configuration_Files」を参照してください。
このコマンドレットは、PowerShell 3.0 で導入されました。
例
例 1: NoLanguage セッションの作成と使用
この例では、言語なしのセッションを使用する方法と効果を示します。
これには次の手順が含まれます。
- 新しい構成ファイルをCreateします。
- 構成を登録します。
- 構成を使用する新しいセッションをCreateします。
- その新しいセッションでコマンドを実行します。
この例のコマンドを実行するには、[管理者として実行] オプションを使用して PowerShell を起動します。 コマンドレットを実行するには、このオプションが Register-PSSessionConfiguration
必要です。
New-PSSessionConfigurationFile -Path .\NoLanguage.pssc -LanguageMode NoLanguage
Register-PSSessionConfiguration -Path .\NoLanguage.pssc -Name NoLanguage -Force
$NoLanguage = New-PSSession -ComputerName Srv01 -ConfigurationName NoLanguage
Invoke-Command -Session $NoLanguage -ScriptBlock { if ((Get-Date) -lt '1January2099') {'Before'} else {'After'} }
The syntax is not supported by this runspace. This might be because it is in no-language mode.
+ CategoryInfo : ParserError: (if ((Get-Date) ...') {'Before'} :String) [], ParseException
+ FullyQualifiedErrorId : ScriptsNotAllowed
+ PSComputerName : localhost
この例では、Invoke-Command
LanguageMode が NoLanguage に設定されているため、 は失敗します。
例 2: RestrictedLanguage セッションの作成と使用
この例では、言語なしのセッションを使用する方法と効果を示します。
これには次の手順が含まれます。
- 新しい構成ファイルをCreateします。
- 構成を登録します。
- 構成を使用する新しいセッションをCreateします。
- その新しいセッションでコマンドを実行します。
この例のコマンドを実行するには、[管理者として実行] オプションを使用して PowerShell を起動します。 コマンドレットを実行するには、このオプションが Register-PSSessionConfiguration
必要です。
New-PSSessionConfigurationFile -Path .\NoLanguage.pssc -LanguageMode RestrictedLanguage
Register-PSSessionConfiguration -Path .\NoLanguage.pssc -Name RestrictedLanguage -Force
$NoLanguage = New-PSSession -ComputerName Srv01 -ConfigurationName RestrictedLanguage
Invoke-Command -Session $NoLanguage -ScriptBlock { if ((Get-Date) -lt '1January2099') {'Before'} else {'After'} }
Before
この例では、Invoke-Command
LanguageMode が RestrictedLanguage に設定されているため、 は成功します。
例 3: セッション構成ファイルの変更
この例では、"ITTasks" という名前の既存のセッションで使用されるセッション構成ファイルを変更する方法を示します。 以前は、これらのセッションにはコア モジュールと内部 ITTasks モジュールしかありませんでした。 管理者は、ITTasks セッション構成を使用して作成されたセッションに PSScheduledJob モジュールを追加したいと考えています。
New-PSSessionConfigurationFile -Path .\New-ITTasks.pssc -ModulesToImport Microsoft*, ITTasks, PSScheduledJob
Set-PSSessionConfiguration -Name ITTasks -Path .\New-ITTasks.pssc
New-PSSessionConfigurationFile
必要なモジュールをインポートするセッション構成ファイルを作成するコマンドレット。 コマンドレットは Set-PSSessionConfiguration
、現在の構成ファイルを新しい構成ファイルに置き換えます。 この新しい構成は、変更後に作成された新しいセッションにのみ影響します。
既存の "ITTasks" セッションは影響を受けません。
例 4: セッション構成ファイルの編集
この例は、構成ファイルのアクティブなセッション構成のコピーを編集することで、セッション構成を変更する方法を示しています。 構成ファイルのセッション構成コピーを変更するには、ファイルへのフル コントロール アクセス権が必要です。 これには、ファイルのアクセス許可を変更する必要がある場合があります。
このシナリオでは、アクティブな構成ファイルを編集して、コマンドレットの Select-String
新しいエイリアスを追加します。
次のコード例では、この変更を行うために次の手順を実行します。
- ITConfig セッションの構成ファイル パスを取得します。
- ユーザーは、 Notepad.exe を使用して構成ファイルを編集し、 AliasDefinitions の値を 次のように変更します
AliasDefinitions = @(@{Name='slst';Value='Select-String'})
。 - 更新された構成ファイルをテストします。
$ITConfig = Get-PSSessionConfiguration -Name ITConfig
notepad.exe $ITConfig.ConfigFilePath
Test-PSSessionConfigurationFile -Path $ITConfig.ConfigFilePath
True
検出されたエラーを表示するには、 と のTest-PSSessionConfigurationFile
Verbose パラメーターを使用します。 コマンドレットは、 $True
ファイルでエラーが検出されない場合に を返します。
例 5: サンプル構成ファイルをCreateする
この例では、 New-PSSessionConfigurationFile
すべてのコマンドレット パラメーターを使用するコマンドを示します。
各パラメーターの正しい入力形式を示すために含まれています。
最終的な SampleFile.pssc が出力に表示されます。
$configSettings = @{
Path = '.\SampleFile.pssc'
SchemaVersion = '1.0.0.0'
Author = 'User01'
Copyright = '(c) Fabrikam Corporation. All rights reserved.'
CompanyName = 'Fabrikam Corporation'
Description = 'This is a sample file.'
ExecutionPolicy = 'AllSigned'
PowerShellVersion = '3.0'
LanguageMode = 'FullLanguage'
SessionType = 'Default'
EnvironmentVariables = @{TESTSHARE='\\Test2\Test'}
ModulesToImport = @{ModuleName='PSScheduledJob'; ModuleVersion='1.0.0.0'; GUID='50cdb55f-5ab7-489f-9e94-4ec21ff51e59'},'PSDiagnostics'
AssembliesToLoad = 'System.Web.Services','FSharp.Compiler.CodeDom.dll'
TypesToProcess = 'Types1.ps1xml','Types2.ps1xml'
FormatsToProcess = 'CustomFormats.ps1xml'
ScriptsToProcess = 'Get-Inputs.ps1'
AliasDefinitions = @{Name='hlp';Value='Get-Help';Description='Gets help.';Options='AllScope'},@{Name='Update';Value='Update-Help';Description='Updates help';Options='ReadOnly'}
FunctionDefinitions = @{Name='Get-Function';ScriptBlock={Get-Command -CommandType Function};Options='ReadOnly'}
VariableDefinitions = @{Name='WarningPreference';Value='SilentlyContinue'}
VisibleAliases = 'c*','g*','i*','s*'
VisibleCmdlets = 'Get*'
VisibleFunctions = 'Get*'
VisibleProviders = 'FileSystem','Function','Variable'
}
New-PSSessionConfigurationFile @configSettings
Get-Content SampleFile.pssc
@{
# Version number of the schema used for this configuration file
SchemaVersion = '1.0.0.0'
# ID used to uniquely identify this session configuration
GUID = 'f7039ffa-7e54-4382-b358-a393c75c30d3'
# Specifies the execution policy for this session configuration
ExecutionPolicy = 'AllSigned'
# Specifies the language mode for this session configuration
LanguageMode = 'FullLanguage'
# Initial state of this session configuration
SessionType = 'Default'
# Environment variables defined in this session configuration
EnvironmentVariables = @{
TESTSHARE='\\Test2\Test'
}
# Author of this session configuration
Author = 'User01'
# Company associated with this session configuration
CompanyName = 'Fabrikam Corporation'
# Copyright statement for this session configuration
Copyright = '(c) Fabrikam Corporation. All rights reserved.'
# Description of the functionality provided by this session configuration
Description = 'This is a sample file.'
# Version of the PowerShell engine used by this session configuration
PowerShellVersion = '3.0'
# Modules that will be imported
ModulesToImport = @{
ModuleVersion='1.0.0.0'
ModuleName='PSScheduledJob'
GUID='50cdb55f-5ab7-489f-9e94-4ec21ff51e59'
}, 'PSDiagnostics'
# Assemblies that will be loaded in this session configuration
AssembliesToLoad = 'System.Web.Services', 'FSharp.Compiler.CodeDom.dll'
# Aliases visible in this session configuration
VisibleAliases = 'c*', 'g*', 'i*', 's*'
# Cmdlets visible in this session configuration
VisibleCmdlets = 'Get*'
# Functions visible in this session configuration
VisibleFunctions = 'Get*'
# Providers visible in this session configuration
VisibleProviders = 'FileSystem', 'Function', 'Variable'
# Aliases defined in this session configuration
AliasDefinitions = @(
@{
Description='Gets help.'
Name='hlp'
Options='AllScope'
Value='Get-Help'
},
@{
Description='Updates help'
Name='Update'
Options='ReadOnly'
Value='Update-Help'
}
)
# Functions defined in this session configuration
FunctionDefinitions = @(
@{
Name='Get-Function'
Options='ReadOnly'
ScriptBlock={Get-Command -CommandType Function}
}
)
# Variables defined in this session configuration
VariableDefinitions = @(
@{
Value='SilentlyContinue'
Name='WarningPreference'
# Type files (.ps1xml) that will be loaded in this session configuration
TypesToProcess = 'C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\Types1.ps1xml', 'C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\Types2.ps1xml'
# Format files (.ps1xml) that will be loaded in this session configuration
FormatsToProcess = 'C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\CustomFormats.ps1xml'
# Specifies the scripts to execute after the session is configured
ScriptsToProcess = 'C:\WINDOWS\System32\WindowsPowerShell\v1.0\SessionConfig\Get-Inputs.ps1'
}
この例は、すべてのコマンドレット パラメーターを使用する New-PSSessionConfigurationFile コマンドを表示します。 各パラメーターの正しい入力形式を示すために含まれています。
最終的な SampleFile.pssc が出力に表示されます。
パラメーター
-AliasDefinitions
セッション構成を使用するセッションに、指定されたエイリアスを追加します。 ハッシュ テーブルに次のキーを入力します。
- [名前] - エイリアスの名前。 このキーは必須です。
- 値 - エイリアスが表すコマンド。 このキーは必須です。
- Description - エイリアスを記述するテキスト文字列。 このキーはオプションです。
- [オプション] - [エイリアス] オプション。 このキーはオプションです。 既定値は None です。 このパラメーターに使用できる値は、None、ReadOnly、Constant、Private、または AllScope です。
例: @{Name='hlp';Value='Get-Help';Description='Gets help';Options='ReadOnly'}
Type: | Hashtable[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AssembliesToLoad
セッション構成を使用するセッションに読み込むためのアセンブリを指定します。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Author
セッション構成または構成ファイルの作成者を指定します。 既定値は現在のユーザーです。 このパラメーターの値は、セッション構成ファイルに表示されますが、セッション構成オブジェクトのプロパティではありません。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CompanyName
セッション構成または構成ファイルを作成した会社を指定します。 既定値は Unknown です。 このパラメーターの値は、セッション構成ファイルに表示されますが、セッション構成オブジェクトのプロパティではありません。
Type: | String |
Position: | Named |
Default value: | Unknown |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Copyright
セッション構成ファイルの著作権を指定します。 このパラメーターの値は、セッション構成ファイルに表示されますが、セッション構成オブジェクトのプロパティではありません。
このパラメーターを省略すると、 New-PSSessionConfigurationFile
Author パラメーターの値を使用して copyright ステートメントが生成されます。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Description
セッション構成またはセッション構成ファイルの説明を指定します。 このパラメーターの値は、セッション構成ファイルに表示されますが、セッション構成オブジェクトのプロパティではありません。
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EnvironmentVariables
環境変数をセッションに追加します。 キーが環境変数名で、値が環境変数値のハッシュ テーブルを入力します。
例: EnvironmentVariables=@{TestShare='\\Server01\TestShare'}
Type: | Object |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ExecutionPolicy
セッション構成を使用するセッションの実行ポリシーを指定します。 このパラメーターを省略すると、セッション構成ファイルの ExecutionPolicy キーの値は Restricted になります。 PowerShell での実行ポリシーの詳細については、「 about_Execution_Policies」を参照してください。
Type: | ExecutionPolicy |
Accepted values: | Unrestricted, RemoteSigned, AllSigned, Restricted, Default, Bypass, Undefined |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FormatsToProcess
セッション構成を使用するセッションで実行する書式設定ファイル (.ps1xml) を指定します。 このパラメーターの値は、書式設定ファイルの完全パスまたは絶対パスである必要があります。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FunctionDefinitions
セッション構成を使用するセッションに、指定された関数を追加します。 ハッシュ テーブルに次のキーを入力します。
- Name - 関数の名前。 このキーは必須です。
- ScriptBlock - 関数本体。 スクリプト ブロックを入力します。 このキーは必須です。
- オプション - 関数のオプション。 このキーはオプションです。 既定値は None です。 このパラメーターに使用できる値は、None、ReadOnly、Constant、Private、または AllScope です。
例: @{Name='Get-PowerShellProcess';ScriptBlock={Get-Process PowerShell};Options='AllScope'}
Type: | Hashtable[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Guid
セッション構成ファイルの一意の識別子を指定します。 このパラメーターを省略すると、 New-PSSessionConfigurationFile
ファイルの GUID が生成されます。 PowerShell で新しい GUID を作成するには、「」と入力します New-Guid
。
Type: | Guid |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LanguageMode
このセッション構成を使用するセッションで許可される PowerShell 言語の要素を決定します。 このパラメーターを使用して、特定のユーザーがコンピューター上で実行できるコマンドを制限できます。
このパラメーターの有効値は、次のとおりです。
- FullLanguage - すべての言語要素が許可されます。
- ConstrainedLanguage - 評価するスクリプトを含むコマンドは許可されません。 ConstrainedLanguage モードは、ユーザーのアクセスを Microsoft .NET Framework の型、オブジェクト、またはメソッドに制限します。
- NoLanguage - ユーザーはコマンドレットと関数を実行できますが、スクリプト ブロック、変数、演算子などの言語要素を使用することはできません。
- RestrictedLanguage - ユーザーはコマンドレットと関数を実行できますが、許可されている変数 、 を除き、スクリプト ブロックまたは変数
$PSCulture
$False
$PSUICulture
$True
$Null
の使用は許可されません。 ユーザーは、基本的な比較演算子 (-eq
、、-gt
-lt
) のみを使用できます。 代入ステートメント、プロパティ参照、およびメソッド呼び出しは許可されません。
LanguageMode パラメーターの既定値は、SessionType パラメーターの値によって異なります。
- 空 - NoLanguage
- RestrictedRemoteServer - NoLanguage
- 既定値 - FullLanguage
Type: | PSLanguageMode |
Accepted values: | FullLanguage, RestrictedLanguage, NoLanguage, ConstrainedLanguage |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ModulesToImport
セッション構成を使用するセッションに自動的にインポートされたモジュールおよびスナップインを指定します。
既定では、Microsoft.PowerShell.Core スナップインのみがリモート セッションにインポートされますが、コマンドレットが除外されていない限り、ユーザーは コマンドレットと Add-PSSnapin
コマンドレットをImport-Module
使用してモジュールとスナップインをセッションに追加できます。
このパラメーターの値の各モジュールまたはスナップインを、文字列によって、またはハッシュ テーブルとして表すことができます。 モジュール文字列は、モジュールまたはスナップインの名前のみで構成されます。 モジュール ハッシュ テーブルには、 ModuleName、 ModuleVersion、 GUID キーを含めることができます。 ModuleName キーのみが必須です。
たとえば、次の値は文字列とハッシュ テーブルで構成されます。 任意の順序での文字列とハッシュ テーブルの組み合わせは有効です。
'TroubleshootingPack', @{ModuleName='PSDiagnostics'; ModuleVersion='1.0.0.0';GUID='c61d6278-02a3-4618-ae37-a524d40a7f44'}
コマンドレットの ModulesToImport パラメーターの Register-PSSessionConfiguration
値は、セッション構成ファイルの ModulesToImport キーの値よりも優先されます。
Type: | Object[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Path
セッション構成ファイルのパスとファイル名を指定します。 ファイルにはファイル名拡張子が必要です .pssc
。
Type: | String |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PowerShellVersion
セッション構成を使用するセッションの PowerShell エンジンのバージョンを指定します。 このパラメーターに使用できる値は、2.0 と 3.0 です。 このパラメーターを省略すると、 PowerShellVersion キーがコメントアウトされ、最新バージョンの PowerShell がセッションで実行されます。
コマンドレットの PSVersion パラメーターの Register-PSSessionConfiguration
値は、セッション構成ファイルの PowerShellVersion キーの値よりも優先されます。
Type: | Version |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SchemaVersion
セッション構成ファイル スキーマのバージョンを指定します。 既定値は "1.0.0.0" です。
Type: | Version |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ScriptsToProcess
セッション構成を使用するセッションに、指定されたスクリプトを追加します。 スクリプトのパスとファイル名を入力します。 このパラメーターの値は、スクリプト ファイル名の完全パスまたは絶対パスである必要があります。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SessionType
セッション構成を使用して作成されるセッションの型を指定します。 既定値は Default です。 このパラメーターの有効値は、次のとおりです。
- 空 - 既定では、モジュールはセッションに追加されません。 このコマンドレットのパラメーターを使用して、モジュール、関数、スクリプト、およびその他の機能をセッションに追加できます。 このオプションは、選択したコマンドを追加してカスタム セッションを作成するために設計されています。 空のセッションにコマンドを追加しないと、セッションは式に制限され、使用できない場合があります。
- 既定値 - Microsoft.PowerShell.Core モジュールをセッションに追加します。 このモジュールには、このコマンドレットを
Import-Module
明示的に禁止しない限り、ユーザーが他のモジュールのインポートに使用できるコマンドレットが含まれています。 - RestrictedRemoteServer。 、、 の各プロキシ関数
Exit-PSSession
Measure-Object
Select-Object
Get-Command
Get-FormatData
Get-Help
Out-Default
のみが含まれます。 このコマンドレットのパラメーターを使用して、モジュール、関数、スクリプト、およびその他の機能をセッションに追加できます。
Type: | SessionType |
Accepted values: | Empty, RestrictedRemoteServer, Default |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-TypesToProcess
指定した種類のファイルを、セッション構成を使用するセッションに追加します .ps1xml
。 ファイル名の種類を入力します。 このパラメーターの値は、ファイル名型の完全パスまたは絶対パスである必要があります。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VariableDefinitions
セッション構成を使用するセッションに、指定された変数を追加します。 ハッシュ テーブルに次のキーを入力します。
- Name - 変数の名前。 このキーは必須です。
- 値 - 変数の値。 このキーは必須です。
- [オプション] - [変数] オプション。 このキーはオプションです。 既定値は None です。 このパラメーターに使用できる値は、None、ReadOnly、Constant、Private、または AllScope です。
例: @{Name='WarningPreference';Value='SilentlyContinue';Options='AllScope'}
Type: | Object |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VisibleAliases
セッションのエイリアスを、このパラメーターの値に指定されたエイリアスと、AliasDefinition パラメーターに定義するエイリアスに制限します。 ワイルドカード文字がサポートされています。 既定では、PowerShell エンジンによって定義されているすべてのエイリアスと、モジュールがエクスポートするすべてのエイリアスがセッションに表示されます。
例: VisibleAliases='gcm', 'gp'
セッション構成ファイルに Visible パラメーターが含まれている場合、PowerShell はコマンドレットとその ipmo エイリアスをセッションから削除 Import-Module
します。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-VisibleCmdlets
セッションのコマンドレットを、このパラメーターの値に指定されたコマンドレットに制限します。 ワイルドカード文字とモジュール修飾名がサポートされています。
既定では、セッション内のモジュールがエクスポートするすべてのコマンドレットが、セッションで表示されます。 SessionType および ModulesToImport パラメーターを使用して、どのモジュールとスナップインをセッションにインポートするかを決定します。 ModulesToImport にコマンドレットを公開するモジュールがない場合、適切なモジュールは自動読み込みを試みます。
セッション構成ファイルに Visible パラメーターが含まれている場合、PowerShell はコマンドレットとその ipmo エイリアスをセッションから削除 Import-Module
します。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-VisibleFunctions
セッションの関数を、このパラメーターの値に指定された関数と、FunctionDefinition パラメーターに定義する関数に制限します。 ワイルドカード文字がサポートされています。
既定では、セッション内のモジュールがエクスポートするすべての関数が、セッションで表示されます。 SessionType および ModulesToImport パラメーターを使用して、どのモジュールとスナップインをセッションにインポートするかを決定します。
セッション構成ファイルに Visible パラメーターが含まれている場合、PowerShell はコマンドレットとその ipmo エイリアスをセッションから削除 Import-Module
します。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-VisibleProviders
セッション内の PowerShell プロバイダーを、このパラメーターの値で指定されたプロバイダーに制限します。 ワイルドカード文字がサポートされています。
既定では、セッション内のモジュールがエクスポートするすべてのプロバイダーが、セッションで表示されます。 SessionType パラメーターと ModulesToImport パラメーターを使用して、セッションにインポートされるモジュールを決定します。
セッション構成ファイルに Visible パラメーターが含まれている場合、PowerShell はコマンドレットとそのエイリアスをipmo
セッションから削除Import-Module
します。
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
入力
None
このコマンドレットにオブジェクトをパイプすることはできません。
出力
None
このコマンドレットは出力を生成しません。
メモ
VisibleCmdlets や VisibleProviders などのパラメーターは、項目をセッションにインポートしません。 代わりに、セッションにインポートされた項目の中から選択します。 たとえば、 VisibleProviders パラメーターの値が証明書プロバイダーであるのに、 ModulesToImport パラメーターで証明書プロバイダーを含む Microsoft.PowerShell.Security モジュールが指定されていない場合、証明書プロバイダーはセッションに表示されません。
New-PSSessionConfigurationFile
は、 Path パラメーターで指定したパスに .pssc ファイル名拡張子を持つセッション構成ファイルを作成します。 セッション構成ファイルを使用してセッション構成を作成すると、コマンドレットによってRegister-PSSessionConfiguration
構成ファイルがコピーされ、そのファイルのアクティブなコピーがディレクトリの SessionConfig サブディレクトリに$PSHOME
保存されます。セッション構成の ConfigFilePath プロパティには、アクティブなセッション構成ファイルの完全修飾パスが含まれています。 任意のテキスト エディターを使用して、ディレクトリ内の
$PSHOME
アクティブな構成ファイルをいつでも変更できます。 加えた変更は、既存のセッションではなく、セッション構成を使用するすべての新しいセッションに影響します。編集したセッション構成ファイルを使用する前に、 コマンドレットを
Test-PSSessionConfigurationFile
使用して、構成ファイルのエントリが有効であることを確認します。