<span style="color: #006400;"># run in v2, export all core cmdlets, name and parameters</span>
<span style="color: #0000ff;">Get-Command </span><span style="color: #000080;">-Module</span><span style="color: #8a2be2;"> Microsoft.PowerShell.*, Microsoft.WSMan.* </span><span style="color: #a9a9a9;">|</span><span style="color: #0000ff;"> Select-Object</span><span style="color: #000080;">-Property</span><span style="color: #8a2be2;">Name</span><span style="color: #a9a9a9;">,</span><span style="color: #000000;">@{</span><span style="color: #000000;">Name</span><span style="color: #a9a9a9;">=</span><span style="color: #8b0000;">’Parameters’</span><span style="color: #000000;">;</span><span style="color: #000000;">Expression</span><span style="color: #a9a9a9;">=</span><span style="color: #000000;">{</span><span style="color: #000000;">(</span><span style="color: #0000ff;">Get-Command</span><span style="color: #ff4500;"> $_</span>)<span style="color: #a9a9a9;">.</span><span style="color: #000000;">Parameters</span><span style="color: #a9a9a9;">.</span><span style="color: #000000;">Keys</span><span style="color: #000000;">}</span><span style="color: #000000;">}</span><span style="color: #a9a9a9;"> |</span><span style="color: #0000ff;"> Export-Clixml</span><span style="color: #8a2be2;">.\v2.xml</span>
<span style="color: #006400;"># run in v3, export all core cmdlets, name and parameters</span>
<span style="color: #0000ff;">Get-Command</span><span style="color: #000080;"> -Module</span><span style="color: #8a2be2;"> Microsoft.PowerShell.*, Microsoft.WSMan.* </span><span style="color: #a9a9a9;">| </span><span style="color: #0000ff;">Select-Object</span><span style="color: #000080;">-Property</span><span style="color: #8a2be2;">Name</span><span style="color: #a9a9a9;">,</span><span style="color: #000000;">@{</span><span style="color: #000000;">Name</span><span style="color: #a9a9a9;">=</span><span style="color: #8b0000;">’Parameters’</span><span style="color: #000000;">;</span><span style="color: #000000;">Expression</span><span style="color: #a9a9a9;">=</span><span style="color: #000000;">{</span><span style="color: #000000;">(</span><span style="color: #0000ff;">Get-Command</span><span style="color: #ff4500;"> $_</span>)<span style="color: #a9a9a9;">.</span><span style="color: #000000;">Parameters</span><span style="color: #a9a9a9;">.</span><span style="color: #000000;">Keys</span><span style="color: #000000;">}</span><span style="color: #000000;">}</span><span style="color: #a9a9a9;"> |</span><span style="color: #0000ff;"> Export-Clixml</span><span style="color: #8a2be2;">.\v3.xml</span>
<span style="color: #006400;"># run either in v2 or v3 console</span>
<span style="color: #ff4500;">$v2</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #0000ff;">Import-CliXml</span><span style="color: #000000;"> </span><span style="color: #8a2be2;">.\v2.xml</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">|</span><span style="color: #000000;"> </span><span style="color: #0000ff;">Sort-Object</span><span style="color: #000000;"> </span><span style="color: #000080;">-Property</span><span style="color: #000000;"> </span><span style="color: #8a2be2;">Name</span>
<span style="color: #ff4500;">$v3</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #0000ff;">Import-CliXml</span><span style="color: #000000;"> </span><span style="color: #8a2be2;">.\v3.xml</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">|</span><span style="color: #000000;"> </span><span style="color: #0000ff;">Sort-Object</span><span style="color: #000000;"> </span><span style="color: #000080;">-Property</span><span style="color: #000000;"> </span><span style="color: #8a2be2;">Name</span>
<span style="color: #0000ff;">Compare-Object</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$v2</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$v3</span><span style="color: #000000;"> </span><span style="color: #000080;">-Property</span><span style="color: #000000;"> </span><span style="color: #8a2be2;">Name</span><span style="color: #000000;"> </span><span style="color: #000080;">-IncludeEqual</span><span style="color: #000000;"> </span><span style="color: #000080;">-PassThru</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">|</span><span style="color: #000000;"> </span><span style="color: #0000ff;">ForEach-Object</span><span style="color: #000000;"> </span><span style="color: #000000;">{</span>
<span style="color: #000000;"> </span><span style="color: #ff4500;">$Command</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$_</span>
<span style="color: #000000;"> </span><span style="color: #00008b;">if</span><span style="color: #000000;">(</span><span style="color: #ff4500;">$_</span><span style="color: #a9a9a9;">.</span><span style="color: #000000;">SideIndicator</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">-eq</span><span style="color: #000000;"> </span><span style="color: #8b0000;">‘==’</span><span style="color: #000000;">)</span>
<span style="color: #000000;"> </span><span style="color: #000000;">{</span>
<span style="color: #000000;"> </span><span style="color: #ff4500;">$Command</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$_</span>
<span style="color: #000000;"> </span><span style="color: #ff4500;">$cv2</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$v2</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">|</span><span style="color: #000000;"> </span><span style="color: #0000ff;">Where-Object</span><span style="color: #000000;"> </span><span style="color: #000000;">{</span><span style="color: #ff4500;">$_</span><span style="color: #a9a9a9;">.</span><span style="color: #000000;">Name</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">-eq</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$Command</span><span style="color: #a9a9a9;">.</span><span style="color: #000000;">Name</span><span style="color: #000000;">}</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">|</span><span style="color: #000000;"> </span><span style="color: #0000ff;">Select-Object</span><span style="color: #000000;"> </span><span style="color: #000080;">-ExpandProperty</span><span style="color: #000000;"> </span><span style="color: #8a2be2;">Parameters</span>
<span style="color: #000000;"> </span><span style="color: #ff4500;">$cv3</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$v3</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">|</span><span style="color: #000000;"> </span><span style="color: #0000ff;">Where-Object</span><span style="color: #000000;"> </span><span style="color: #000000;">{</span><span style="color: #ff4500;">$_</span><span style="color: #a9a9a9;">.</span><span style="color: #000000;">Name</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">-eq</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$Command</span><span style="color: #a9a9a9;">.</span><span style="color: #000000;">Name</span><span style="color: #000000;">}</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">|</span><span style="color: #000000;"> </span><span style="color: #0000ff;">Select-Object</span><span style="color: #000000;"> </span><span style="color: #000080;">-ExpandProperty</span><span style="color: #000000;"> </span><span style="color: #8a2be2;">Parameters</span>
<span style="color: #000000;"> </span><span style="color: #ff4500;">$compare</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #0000ff;">Compare-Object</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$cv2</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$cv3</span>
<span style="color: #000000;"> </span><span style="color: #00008b;">if</span><span style="color: #000000;">(</span><span style="color: #ff4500;">$compare</span><span style="color: #000000;">)</span>
<span style="color: #000000;"> </span><span style="color: #000000;">{</span>
<span style="color: #000000;"> </span><span style="color: #00008b;">try</span>
<span style="color: #000000;"> </span><span style="color: #000000;">{</span>
<span style="color: #000000;"> </span><span style="color: #ff4500;">$NewParameters</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$compare</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">|</span><span style="color: #000000;"> </span><span style="color: #0000ff;">Where-Object</span><span style="color: #000000;"> </span><span style="color: #000000;">{</span><span style="color: #ff4500;">$_</span><span style="color: #a9a9a9;">.</span><span style="color: #000000;">SideIndicator</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">-eq</span><span style="color: #000000;"> </span><span style="color: #8b0000;">‘=>’</span><span style="color: #000000;">}</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">|</span><span style="color: #000000;"> </span><span style="color: #0000ff;">ForEach-Object</span><span style="color: #000000;"> </span><span style="color: #000000;">{</span><span style="color: #ff4500;">$_</span><span style="color: #a9a9a9;">.</span><span style="color: #000000;">InputObject</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">+</span><span style="color: #000000;"> </span><span style="color: #8b0000;">‘ (+)’</span><span style="color: #000000;">}</span>
<span style="color: #000000;"> </span><span style="color: #ff4500;">$RemovedParameters</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">=</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$compare</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">|</span><span style="color: #000000;"> </span><span style="color: #0000ff;">Where-Object</span><span style="color: #000000;"> </span><span style="color: #000000;">{</span><span style="color: #ff4500;">$_</span><span style="color: #a9a9a9;">.</span><span style="color: #000000;">SideIndicator</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">-eq</span><span style="color: #000000;"> </span><span style="color: #8b0000;">‘<=’</span><span style="color: #000000;">}</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">|</span><span style="color: #000000;"> </span><span style="color: #0000ff;">ForEach-Object</span><span style="color: #000000;"> </span><span style="color: #000000;">{</span><span style="color: #ff4500;">$_</span><span style="color: #a9a9a9;">.</span><span style="color: #000000;">InputObject</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">+</span><span style="color: #000000;"> </span><span style="color: #8b0000;">‘ (-)’</span><span style="color: #000000;">}</span>
<span style="color: #000000;"> </span><span style="color: #8b0000;">“$($command.Name) (!)”</span>
<span style="color: #000000;"> </span><span style="color: #ff4500;">$NewParameters</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">+</span><span style="color: #000000;"> </span><span style="color: #ff4500;">$RemovedParameters</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">|</span><span style="color: #000000;"> </span><span style="color: #0000ff;">Sort-Object</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">|</span><span style="color: #000000;"> </span><span style="color: #0000ff;">ForEach-Object</span><span style="color: #000000;"> </span><span style="color: #000000;">{</span><span style="color: #000000;"> </span><span style="color: #8b0000;">“`t$_”</span><span style="color: #000000;">}</span>
<span style="color: #000000;"> </span><span style="color: #8b0000;">“`n”</span>
<span style="color: #000000;"> </span><span style="color: #000000;">}</span>
<span style="color: #000000;"> </span><span style="color: #00008b;">catch</span><span style="color: #000000;">{</span><span style="color: #000000;">}</span>
<span style="color: #000000;"> </span><span style="color: #000000;">}</span>
<span style="color: #000000;"> </span><span style="color: #000000;">}</span>
<span style="color: #000000;"> </span><span style="color: #00008b;">elseif</span><span style="color: #000000;">(</span><span style="color: #ff4500;">$_</span><span style="color: #a9a9a9;">.</span><span style="color: #000000;">SideIndicator</span><span style="color: #000000;"> </span><span style="color: #a9a9a9;">-eq</span><span style="color: #000000;"> </span><span style="color: #8b0000;">‘=>’</span><span style="color: #000000;">)</span>
<span style="color: #000000;"> </span><span style="color: #000000;">{</span>
<span style="color: #000000;"> </span><span style="color: #8b0000;">“$($Command.name) (+)`n”</span>
<span style="color: #000000;"> </span><span style="color: #000000;">}</span>
<span style="color: #000000;"> </span><span style="color: #00008b;">else</span>
<span style="color: #000000;"> </span><span style="color: #000000;">{</span>
<span style="color: #000000;"> </span><span style="color: #8b0000;">“$($Command.name) (-)`n”</span>
<span style="color: #000000;"> </span><span style="color: #000000;">}</span>
<span style="color: #000000;">}</span>