Import-PSSession
別のセッションから現在のセッションにコマンドをインポートします。
構文
Import-PSSession
[-Prefix <String>]
[-DisableNameChecking]
[[-CommandName] <String[]>]
[-AllowClobber]
[-ArgumentList <Object[]>]
[-CommandType <CommandTypes>]
[-Module <String[]>]
[-FullyQualifiedModule <ModuleSpecification[]>]
[[-FormatTypeName] <String[]>]
[-Certificate <X509Certificate2>]
[-Session] <PSSession>
[<CommonParameters>]
説明
コマンドレットは Import-PSSession
、コマンドレット、関数、エイリアスなどのコマンドを、ローカル コンピューターまたはリモート コンピューター上の PSSession から現在のセッションにインポートします。 コマンドレットが PSSession で見つけることができる任意のコマンド Get-Command
をインポートできます。
コマンドをImport-PSSession
使用して、カスタマイズされたシェル (Microsoft Exchange Server シェルなど) から、または Windows PowerShell モジュールとスナップイン、または現在のセッションに含まれていないその他の要素を含むセッションからコマンドをインポートします。
コマンドをインポートするには、まず コマンドレットを New-PSSession
使用して PSSession を作成します。 次に、 コマンドレットを Import-PSSession
使用してコマンドをインポートします。 既定では、 Import-PSSession
現在のセッションのコマンドと同じ名前のコマンドを除くすべてのコマンドがインポートされます。 すべてのコマンドをインポートするには、AllowClobber パラメーターを使用します。
インポートしたコマンドは、セッションのコマンドを使用する場合と同じように使用できます。 インポートしたコマンドを使用すると、インポートした部分のコマンドがインポート元のセッションで暗黙的に実行されます。 ただし、リモート操作はすべて Windows PowerShell によって処理されます。 リモート操作に注意を払う必要はありませんが、もう一方のセッション (PSSession) への接続を開いたままにする必要があります。 接続を閉じると、インポートしたコマンドを利用できなくなります。
インポートされたコマンドはローカル コマンドよりも実行に時間がかかる場合があるため、 Import-PSSession
インポートされたすべてのコマンドに AsJob パラメーターを追加します。 このパラメーターを使用すると、コマンドを Windows PowerShell のバックグラウンド ジョブとして実行することができます。 詳細については、「about_Jobs」を参照してください。
を使用Import-PSSession
すると、Windows PowerShellは、セッションにのみ存在し、モジュールを表す オブジェクトを返す一時モジュールにインポートされたコマンドを追加します。 今後のセッションで使用できる永続的なモジュールを作成するには、 コマンドレットを使用します Export-PSSession
。
コマンドレットはImport-PSSession
、Windows PowerShellの暗黙的なリモート処理機能を使用します。 現在のセッションにコマンドをインポートすると、元のセッションまたは元のコンピューター上の同様のセッションで暗黙的に実行されます。
Windows PowerShell 3.0 以降では、 コマンドレットをImport-Module
使用して、リモート セッションから現在のセッションにモジュールをインポートできます。 この機能では、暗黙的なリモート処理が使用されます。 これは、 を使用して Import-PSSession
、選択したモジュールをリモート セッションから現在のセッションにインポートするのと同じです。
例
例 1: PSSession からすべてのコマンドをインポートする
$S = New-PSSession -ComputerName Server01
Import-PSSession -Session $S
このコマンドは、Server01 コンピューターの PSSession から現在のセッションに、現在のセッションのコマンドと同じ名前のコマンドを除くすべてのコマンドをインポートします。
このコマンドでは CommandName パラメーターを使用しないため、インポートされたコマンドに必要な書式データもすべてインポートされます。
例 2: 特定の文字列で終わるコマンドをインポートする
$S = New-PSSession https://ps.testlabs.com/powershell
Import-PSSession -Session $S -CommandName *-test -FormatTypeName *
New-Test -Name Test1
Get-Test test1 | Run-Test
これらのコマンドは、PSSession からローカル セッションに名前が "-test" で終わるコマンドをインポートします。その後、インポートしたコマンドレットを使用する方法も示します。
最初のコマンドでは、 コマンドレットを New-PSSession
使用して PSSession を作成します。 PSSession を変数に $S
保存します。
2 番目のコマンドでは、 コマンドレットを Import-PSSession
使用して、 の $S
PSSession から現在のセッションにコマンドをインポートします。 CommandName パラメーターを使用して "Test" という名詞を含むコマンドを指定し、FormatTypeName パラメーターを使用して Test コマンドの書式データをインポートします。
3 番目と 4 番目のコマンドは、現在のセッションでインポートされたコマンドを使用します。 インポートされたコマンドは、現在のセッションに実際に追加されるため、ローカル構文を使用して実行できます。 インポートされたコマンドを実行するために、 Invoke-Command
コマンドレットを使用する必要はありません。
例 3: PSSession からコマンドレットをインポートする
$S1 = New-PSSession -ComputerName s1
$S2 = New-PSSession -ComputerName s2
Import-PSSession -Session s1 -Type cmdlet -Name New-Test, Get-Test -FormatTypeName *
Import-PSSession -Session s2 -Type Cmdlet -Name Set-Test -FormatTypeName *
New-Test Test1 | Set-Test -RunType Full
この例では、ローカルのコマンドレットを使用するのと同じように、インポートされたコマンドレットを使用できることを示します。
これらのコマンドは、 New-Test
コマンドレットと Get-Test
コマンドレットを Server01 コンピューターの PSSession からインポートし、 Set-Test
Server02 コンピューターの PSSession から コマンドレットをインポートします。
別々の PSSession からコマンドレットをインポートした場合でも、パイプを使用して 1 つのコマンドレットから別のコマンドレットにオブジェクトを渡すことができます。エラーにはなりません。
例 4: インポートしたコマンドをバックグラウンド ジョブとして実行する
$S = New-PSSession -ComputerName Server01
Import-PSSession -Session $S -CommandName *-test* -FormatTypeName *
$batch = New-Test -Name Batch -AsJob
Receive-Job $batch
この例では、インポートしたコマンドをバックグラウンド ジョブとして実行する方法を示します。
インポートされたコマンドはローカル コマンドよりも実行に時間がかかる場合があるため、 Import-PSSession
インポートされたすべてのコマンドに AsJob パラメーターを追加します。 AsJob パラメーターを使用すると、コマンドをバックグラウンド ジョブとして実行できます。
最初のコマンドは、Server01 コンピューターに PSSession を作成し、PSSession オブジェクトを 変数に $S
保存します。
2 番目のコマンドでは、 を使用 Import-PSSession
して、 の PSSession $S
から現在のセッションに Test コマンドレットをインポートします。
3 番目のコマンドでは、インポートされたNew-Test
コマンドレットの AsJob パラメーターを使用して、バックグラウンド ジョブとしてコマンドを実行New-Test
します。 コマンドは、 を返すジョブ オブジェクトを New-Test
変数に $batch
保存します。
4 番目のコマンドでは、 コマンドレットを Receive-Job
使用して、 変数内のジョブの結果を $batch
取得します。
例 5: Windows PowerShell モジュールからコマンドレットと関数をインポートする
$S = New-PSSession -ComputerName Server01
Invoke-Command -Session $S {Import-Module TestManagement}
Import-PSSession -Session $S -Module TestManagement
この例では、リモート コンピューターの Windows PowerShell モジュールから現在のセッションにコマンドレットと関数をインポートする方法を示します。
最初のコマンドは、Server01 コンピューターに PSSession を作成し、変数に $S
保存します。
2 番目のコマンドでは、 コマンドレットをInvoke-Command
Import-Module
使用して、 の PSSession で$S
コマンドを実行します。
通常、モジュールは、Windows PowerShell プロファイル内のコマンドによってImport-Module
すべてのセッションに追加されますが、プロファイルは PSSessions では実行されません。
3 番目のコマンドでは、 のImport-PSSession
Module パラメーターを使用して、モジュール内のコマンドレットと関数を現在のセッションにインポートします。
例 6: 一時ファイルにモジュールを作成する
PS C:\> Import-PSSession $S -CommandName Get-Date, SearchHelp -FormatTypeName * -AllowClobber
Name : tmp_79468106-4e1d-4d90-af97-1154f9317239_tcw1zunz.ttf
Path : C:\Users\User01\AppData\Local\Temp\tmp_79468106-4e1d-4d90-af97-1154f9317239_tcw1
zunz.ttf\tmp_79468106-4e1d-4d90-af97-1154f9317239_
tcw1zunz.ttf.psm1
Description : Implicit remoting for http://server01.corp.fabrikam.com/wsman
Guid : 79468106-4e1d-4d90-af97-1154f9317239
Version : 1.0
ModuleBase : C:\Users\User01\AppData\Local\Temp\tmp_79468106-4e1d-4d90-af97-1154f9317239_tcw1
zunz.ttf
ModuleType : Script
PrivateData : {ImplicitRemoting}
AccessMode : ReadWrite
ExportedAliases : {}
ExportedCmdlets : {}
ExportedFunctions : {[Get-Date, Get-Date], [SearchHelp, SearchHelp]}
ExportedVariables : {}
NestedModules : {}
この例では、ディスク上の一時ファイルにモジュールを作成する方法 Import-PSSession
を示します。 また、現在のセッションにインポートする前に、すべてのコマンドを関数に変換します。
コマンドでは、 コマンドレットを Import-PSSession
使用して、コマンドレットと SearchHelp 関数を現在のセッションにインポート Get-Date
します。
コマンドレットは Import-PSSession
、一時モジュールを表す PSModuleInfo オブジェクトを返します。 Path プロパティの値は、スクリプト モジュール (.psm1) ファイルが一時的な場所に作成されたことをImport-PSSession
示しています。 ExportedFunctions プロパティは、コマンドレットと SearchHelp 関数の両方が関数としてインポートされたことを示していますGet-Date
。
例 7: インポートされたコマンドで非表示になっているコマンドを実行する
PS C:\> Import-PSSession $S -CommandName Get-Date -FormatTypeName * -AllowClobber
PS C:\> Get-Command Get-Date -All
CommandType Name Definition
----------- ---- ----------
Function Get-Date ...
Cmdlet Get-Date Get-Date [[-Date] <DateTime>] [-Year <Int32>] [-Month <Int32>]
PS C:\> Get-Date
09074
PS C:\> (Get-Command -Type Cmdlet -Name Get-Date).PSSnapin.Name
Microsoft.PowerShell.Utility
PS C:\> Microsoft.PowerShell.Utility\Get-Date
Sunday, March 15, 2009 2:08:26 PM
この例では、インポートされたコマンドによって非表示になったコマンドを実行する方法を示します。
最初のコマンドは、 変数の Get-Date
PSSession からコマンドレットを $S
インポートします。 現在のセッションにはコマンドレットが Get-Date
含まれているため、 コマンドでは AllowClobber パラメーターが必要です。
2 番目のコマンドでは、 コマンドレットの All パラメーターを Get-Command
使用して、現在のセッションのすべての Get-Date
コマンドを取得します。 出力は、セッションに元 Get-Date
のコマンドレットと関数が含まれていることを Get-Date
示しています。 関数はGet-Date
、 の PSSession $S
でインポートされたGet-Date
コマンドレットを実行します。
3 番目のコマンドは、コマンドを Get-Date
実行します。 関数はコマンドレットよりも優先されるため、Windows PowerShellはインポートされたGet-Date
関数を実行し、ユリウス暦の日付を返します。
4 番目と 5 番目のコマンドは、修飾名を使用して、インポートされたコマンドによって非表示になったコマンドを実行する方法を示しています。
4 番目のコマンドは、元Get-Date
のコマンドレットを現在のセッションに追加したWindows PowerShell スナップインの名前を取得します。
5 番目のコマンドでは、コマンドレットのスナップイン名を Get-Date
使用してコマンドを Get-Date
実行します。
コマンドの優先順位と非表示のコマンドの詳細については、「about_Command_Precedence」を参照してください。
例 8: 名前に特定の文字列を含むコマンドをインポートする
PS C:\> Import-PSSession -Session $S -CommandName **Item** -AllowClobber
このコマンドは、 の PSSession $S
から Item を含むコマンドをインポートします。 コマンドには CommandName パラメーターが含まれていますが、 FormatTypeData パラメーターは含まれていないため、コマンドのみがインポートされます。
を使用してリモート コンピューターでコマンドを実行し、現在のセッションでコマンドの書式設定データが既にある場合は、このコマンドを使用 Import-PSSession
します。
例 9: Module パラメーターを使用して、セッションにインポートされたコマンドを検出する
PS C:\> $M = Import-PSSession -Session $S -CommandName *bits* -FormatTypeName *bits*
PS C:\> Get-Command -Module $M
CommandType Name
----------- ----
Function Add-BitsFile
Function Complete-BitsTransfer
Function Get-BitsTransfer
Function Remove-BitsTransfer
Function Resume-BitsTransfer
Function Set-BitsTransfer
Function Start-BitsTransfer
Function Suspend-BitsTransfer
このコマンドは、 のGet-Command
Module パラメーターを使用して、コマンドによってセッションにインポートされたコマンドを確認する方法を Import-PSSession
示します。
最初のコマンドでは、 コマンドレットを Import-PSSession
使用して、名前に PSSession の "bits" が変数に含まれるコマンドを $S
インポートします。 コマンドは Import-PSSession
一時モジュールを返し、コマンドはモジュールを変数に $m
保存します。
2 番目のコマンドでは、 コマンドレットを Get-Command
使用して、 変数内のモジュールによってエクスポートされるコマンドを $M
取得します。
Module パラメーターは、モジュール名用に設計されており、文字列値を受け取ります。 ただし、モジュール オブジェクトを渡すと、Windows PowerShell は、モジュール オブジェクトの ToString メソッドを使用して、モジュール名を返します。
コマンドは Get-Command
、 と同等です Get-Command $M.Name
。
パラメーター
-AllowClobber
現在のセッションのコマンドと同じ名前を持つ場合でも、このコマンドレットが指定したコマンドをインポートすることを示します。
現在のセッションにあるコマンドと同じ名前のコマンドをインポートする場合、インポートされたコマンドを非表示にするか、元のコマンドを置き換えます。 詳細については、「about_Command_Precedence」(コマンドの優先順位について) を参照してください。
既定では、 Import-PSSession
は、現在のセッションのコマンドと同じ名前のコマンドをインポートしません。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ArgumentList
指定した引数 (パラメーター値) を使用したコマンドの配列を指定します。
たとえば、証明書にコマンドのバリアントを Get-Item
インポートするには (Cert:)で PSSession 内の ドライブに $S
「」と入力します Import-PSSession -Session $S -Command Get-Item -ArgumentList cert:
。
Type: | Object[] |
Aliases: | Args |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Certificate
フォーマット ファイル (*) の署名に使用されるクライアント証明書を指定します。作成する Import-PSSession
一時モジュールの Format.ps1xml) またはスクリプト モジュール ファイル (.psm1)。
証明書が格納されている変数を入力するか、証明書を取得するコマンドまたは式を入力します。
証明書を検索するには、 コマンドレットを Get-PfxCertificate
使用するか、 Get-ChildItem
証明書 (Cert:) で コマンドレットを使用します。ドライブ。 証明書が無効な場合、または証明書に十分な権限がない場合、コマンドは失敗します。
Type: | X509Certificate2 |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CommandName
指定した名前または名前パターンを持つコマンドを指定します。 ワイルドカードを使用できます。 CommandName またはそのエイリアス Name を使用します。
既定では、 Import-PSSession
現在のセッションのコマンドと同じ名前のコマンドを除き、セッションからすべてのコマンドをインポートします。 そのため、インポート先のセッションでインポートしたコマンドが非表示になることや、置き換えられることがありません。 非表示になったり、他のコマンドを置き換えたりするコマンドを含め、すべてのコマンドをインポートするには、AllowClobber パラメーターを使用します。
CommandName パラメーターを使用する場合は、FormatTypeName パラメーターを使用しない限り、コマンドの書式ファイルはインポートされません。 同様に、FormatTypeName パラメーターを使用する場合は、CommandName パラメーターを使用しない限り、コマンドはインポートされません。
Type: | String[] |
Aliases: | Name |
Position: | 2 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CommandType
コマンド オブジェクトの種類を指定します。 既定値は Cmdlet です。 CommandType またはそのエイリアスの Type を使用します。 このパラメーターの有効値は、次のとおりです。
Alias
: リモート セッションのWindows PowerShellエイリアス。All
: リモート セッションのコマンドレットと関数。Application
: .txt、.exe、.dll ファイルなど、リモート セッションの Path 環境変数 ($env:path
) に一覧表示されているパス内のファイルWindows-PowerShell以外のすべてのファイル。Cmdlet
: リモート セッションのコマンドレット。 "Cmdlet" が既定値です。ExternalScript
: リモート セッションの Path 環境変数 ($env:path
) に一覧表示されているパス内の.ps1 ファイル。Filter
およびFunction
: リモート セッションのWindows PowerShell関数。Script
: リモート セッションのスクリプト ブロック。
これらの値は、フラグ ベースの列挙体として定義されます。 複数の値を組み合わせて、このパラメーターを使用して複数のフラグを設定できます。 値は、値の配列として、またはそれらの値のコンマ区切りの文字列として CommandType パラメーターに渡すことができます。 コマンドレットは、binary-OR 操作を使用して値を結合します。 配列として値を渡すことは最も簡単なオプションであり、値にタブ補完を使用することもできます。
Type: | CommandTypes |
Aliases: | Type |
Accepted values: | Alias, Function, Filter, Cmdlet, ExternalScript, Application, Script, Workflow, Configuration, All |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DisableNameChecking
コマンドレットまたは関数の名前に未承認の動詞または禁止文字が含まれている場合に警告するメッセージが、このコマンドレットによって抑制されることを示します。
既定では、インポートするモジュールが名前に未承認の動詞を持つコマンドレットまたは関数をエクスポートすると、Windows PowerShellは次の警告メッセージを表示します。
"警告: インポートされたコマンド名には、未承認の動詞が含まれている場合があり、見つけにくくなることがあります。 詳細または型 Get-Verb
を指定するには、Verbose パラメーターを使用して、承認された動詞の一覧を表示します。"
このメッセージは、単なる警告です。 実際には、非準拠のコマンドを含む、すべてのモジュールがインポートされます。 モジュール ユーザーにメッセージが表示されますが、名前付けの問題はモジュール作成者が解決する必要があります。
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FormatTypeName
指定したMicrosoft .NET Framework型の書式設定手順を指定します。 型名を入力します。 ワイルドカードを使用できます。
このパラメーターの値は、コマンドのインポート元のセッションでコマンドによって Get-FormatData
返される型の名前である必要があります。 リモート セッション内のすべての書式設定データを取得するには、「 」と入力します *
。
コマンドに CommandName パラメーターまたは FormatTypeName パラメーターが含まれていない場合は、Import-PSSession
リモート セッションでコマンドによってGet-FormatData
返されるすべての.NET Framework型の書式設定手順をインポートします。
FormatTypeName パラメーターを使用する場合は、CommandName パラメーターを使用しない限り、コマンドはインポートされません。
同様に、CommandName パラメーターを使用する場合は、FormatTypeName パラメーターを使用しない限り、コマンドの書式ファイルはインポートされません。
Type: | String[] |
Position: | 3 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FullyQualifiedModule
値には、モジュール名、完全なモジュール仕様、またはモジュール ファイルへのパスを指定できます。
値がパスの場合、パスは完全修飾または相対パスにすることができます。 相対パスは、using ステートメントを含むスクリプトを基準にして解決されます。
値が名前またはモジュールの指定である場合、PowerShell は PSModulePath で指定されたモジュールを検索します。
モジュール仕様は、次のキーを持つハッシュテーブルです。
ModuleName
- 必須 モジュール名を指定します。GUID
- オプション モジュールの GUID を指定します。- また、以下の 3 つのキーのうち少なくとも 1 つを指定する 必要 もあります。
ModuleVersion
- モジュールの最小許容バージョンを指定します。MaximumVersion
- モジュールの許容される最大バージョンを指定します。RequiredVersion
- モジュールの正確で必要なバージョンを指定します。 これは、他のバージョン キーでは使用できません。
Module パラメーターと同じコマンドで FullyQualifiedModule パラメーターを指定することはできません。 2 つのパラメーターは相互に排他的です。
Type: | ModuleSpecification[] |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Module
Windows PowerShell スナップインとモジュール内のコマンドの配列と 配列を指定します。 スナップインとモジュールの名前を入力します。 ワイルドカードは使用できません。
Import-PSSession
では、スナップインからプロバイダーをインポートできません。
詳細については、「about_PSSnapins」と「about_Modules」を参照してください。
Type: | String[] |
Aliases: | PSSnapin |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Prefix
インポートされたコマンドの名前の名詞のプレフィックスを指定します。
セッションに同じ名前の別のコマンドが存在する場合に発生する名前の競合を回避するには、このパラメーターを使用します。
たとえば、プレフィックス Remote を指定し、コマンドレットを Get-Date
インポートした場合、コマンドレットはセッションで と Get-RemoteDate
呼ばれ、元 Get-Date
のコマンドレットと混同されません。
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Session
コマンドレットのインポート元となる PSSession を指定します。 セッション オブジェクト、または コマンドなどのセッション オブジェクトを取得するコマンドを含む変数をNew-PSSession
Get-PSSession
入力します。 指定できるセッションは 1 つだけです。 このパラメーターは必須です。
Type: | PSSession |
Position: | 0 |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | False |
入力
None
オブジェクトをこのコマンドレットにパイプすることはできません。
出力
このコマンドレットは、および コマンドレットが返す New-Module
のと Get-Module
同じモジュール オブジェクトを返します。
ただし、インポートされたモジュールは一時的なもので、現在のセッションにのみ存在します。 ディスク上に永続的なモジュールを作成するには、 コマンドレットを使用します Export-PSSession
。
メモ
Import-PSSession
は、PowerShell リモート処理インフラストラクチャに依存しています。 このコマンドレットを使用するには、WS-Management リモート処理用にコンピューターを構成する必要があります。 詳細については、「 about_Remote と about_Remote_Requirements」を参照してください。Import-PSSession
は変数または PowerShell プロバイダーをインポートしません。- 現在のセッションのコマンドと同じ名前のコマンドをインポートすると、インポートされたコマンドによって、現在のセッションのエイリアス、関数、およびコマンドレットが非表示になったり、現在のセッションの関数や変数が置き換えられたりすることがあります。 名前の競合を回避するには、Prefix パラメーターを使用します。 詳細については、「about_Command_Precedence」(コマンドの優先順位について) を参照してください。
Import-PSSession
は、すべてのコマンドをインポートする前に関数に変換します。 そのため、インポートされたコマンドの動作は、元のコマンドの種類が維持されている場合と少し異なります。 たとえば、PSSession からコマンドレットをインポートした後、モジュールまたはスナップインから同じ名前のコマンドレットをインポートした場合は、関数はコマンドレットよりも優先されるため、既定では PSSession からインポートしたコマンドレットが常に実行されます。 また、同じ名前のエイリアスが存在するセッションにエイリアスをインポートした場合は、エイリアスは関数よりも優先されるため、元のエイリアスが常に使用されます。 詳細については、「about_Command_Precedence」(コマンドの優先順位について) を参照してください。Import-PSSession
では、 コマンドレットをWrite-Progress
使用してコマンドの進行状況が表示されます。 コマンドが実行中の場合、進行状況バーが表示されます。- インポートするコマンドを見つけるには、
Import-PSSession
コマンドレットをInvoke-Command
使用して PSSession でコマンドを実行Get-Command
します。 コマンドの書式設定データを取得するには、 コマンドレットをGet-FormatData
使用します。 コマンドを実行Import-PSSession
すると、これらのコマンドレットからエラー メッセージが表示されることがあります。 また、Import-PSSession
および コマンドレットを含Select-Object
Get-Command
Get-FormatData
まない PSSession からコマンドをGet-Help
インポートすることはできません。 - インポートされたコマンドには、ユーザー インターフェイスを備えたプログラム (たとえば、メモ帳) を起動できないなど、他のリモート コマンドと同じ制限があります。
- Windows PowerShell プロファイルは PSSessions では実行されないため、プロファイルがセッションに追加するコマンドは では使用
Import-PSSession
できません。 プロファイルからコマンドをインポートするには、コマンドをInvoke-Command
使用して PSSession でプロファイルを手動で実行してから、コマンドをインポートします。 - 作成する
Import-PSSession
一時モジュールには、書式設定データをインポートしない場合でも、書式設定ファイルが含まれる場合があります。 コマンドで書式データがインポートされない場合、作成される書式ファイルに書式データは含まれません。 - を使用
Import-PSSession
するには、作成する一時モジュールImport-PSSession
にこれらのポリシーで禁止されている署名されていないスクリプト ファイルが含まれているため、現在のセッションの実行ポリシーを Restricted または AllSigned にすることはできません。 ローカル コンピューターの実行ポリシーを変更せずに を使用Import-PSSession
するには、 のSet-ExecutionPolicy
Scope パラメーターを使用して、1 つのプロセスに対して制限の緩い実行ポリシーを設定します。 - Windows PowerShell 2.0 では、別のセッションからインポートしたコマンドのヘルプ トピックに、Prefix パラメーターを使用して割り当てたプレフィックスが含まれません。 Windows PowerShell 2.0 でインポートしたコマンドのヘルプを取得するには、元の (プレフィックスなしの) コマンド名を使用します。
関連リンク
フィードバック
フィードバックの送信と表示