PowerShell

The PowerShell forum accepts bug reports as well as feedback and suggestions. For more information, check out the PowerShell Homepage

The following is a list of the states we use to track items.

status meaning
survey We saw this and we are considering it. Please upvote if it’s important to you.
needs more information We don’t understand the issue and need additional details.
investigating We are looking at this internally to understand things like: scenario, reproduction of issue, costing, or other technical details.
in queue The issue is understood and in our unprioritized backlog. Your votes will be used to drive prioritization of this work.
  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. Fix the requirements on the download page please

    https://www.microsoft.com/en-us/download/details.aspx?id=50395

    The download page is where most admins will grab the installer for WMF5. Unfortunately, it only lists .NET Framework 4.5 or above. Windows 7 has an unenforced requirement for WMF4 to be installed first, per https://msdn.microsoft.com/en-us/powershell/wmf/5.0/requirements?f=255&MSPPError=-2147217396

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  2. PowerShell SDK is missing XML comment files

    It's really awesome that there are SDK assemblies in NuGet for PowerShell now, but...

    We need xml documentation. It's traditional to include the XML file for each assembly you ship in NuGet, and none of them were included in any of the packages...

    P.S. Did you really mean to release those under MIT?

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    survey  ·  0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  3. PSv5 ConvertTo-Html online help shows ConvertTo-Xml instead

    The v5 online help for ConvertTo-Html shows the content for ConvertTo-Xml instead. Switching to v4 or v3 show the correct content. All languages seem to affected

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    In Queue  ·  0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  4. Get-NetFirewallRule help page parameters section correction

    Description of the parameter claims, wildcards are accepted, but the "Accept wildcard character?" value is false. Running
    get-netfirewallrule -description *
    results in the retrieval of a portion of the firewall rules retrieved without the parameter (535/556 when I ran it). I suggest editing the help file, as well as checking why the parameter discludes a portion of the firewall rules.
    -Description <String[]>

        Specifies that matching firewall rules of the indicated description are retrieved. Wildcard characters are
    
    accepted.

    This parameter provides information about the firewall rule. This parameter specifies the localized,
    user-facing description of the IPsec rule.

    Required? false
    Position? named …

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    investigating  ·  0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  5. Get-ChildItem has misleading command syntax

    Current discrepancy:
    User can specify the -File switch to indicate only files which to be targeted. However, if you do not specify wildcards in the -Path value to specifically target files, this -File switch returns nothing.

    Working example:
    Get-ChildItem -Path ("{0}*." -f $projectDir.FullName) -File -Include ".csproj")

    Non-Working example:
    Get-ChildItem -Path ("{0}" -f $projectDir.FullName) -File -Include "*.csproj")

    Why does it require explicitly targeting files when the whole nature of this is to target files within a path? Why do I have to do the same thing twice?

    2 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    survey  ·  1 comment  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  6. Consolidate all of the Powershell 'documentation' web pages into a downloadable document that can be searched by keyword.

    Consolidate all of the Powershell 'documentation' web pages into a downloadable document that can be searched by keyword.

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  7. Bug in description of ComputerName parameter for Install-WindowsFeature

    Documentation says "Installs one or more available on a specified remote computer. "

    Should say something among the lines: "Installs one or more available roles, role services, or features on a specified remote computer."

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  8. epoch time

    So I was able to finally figure out how to convert time to epoch time for talking with linux systems, but I don't feel it should be this difficult and/or hard to find documentation.

    $epochTime = ( get-date(get-date).ToUniversalTime() -UFormat "%s" )

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  9. urgh: can't you put up a picture of all the different profile precedent rules - very confusing.

    Short Version: Please put up a diagram showing exactly which profiles get called by which hosts in which order !

    I have recently starting using ISE - having previously just used the Console. Now I am using both. So they apparently have two different profiles. So I tried to copy my existing one - but then (because I use aliases) I get a 'double-loading' effect. Also I'm on powershell 4.0, but my $pshome still have v1.0 in the path ? Additionally: when I tried editing a profile.ps1 from a Windows explorer - it was showing as an empty file in…

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  10. Needs a robust interactive help

    It really needs some sort of interactive help option that can be turned on where it gives the user a heads up display of what options are available and what arguments, if any, are required for the command... Sort of like how VBA for Office worked or the Visual Studio editor... Complete with a mouse hover detailed description and links like the normal Windows Help has...

    2 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  11. Error in Keywords section of About_WorkFlowCommonParameters

    In the help text aboutWorkFlowCommonParameters, in the KEYWORDS section of the full text, it shows two about* files. The first (AboutWorkFlowCommonParameters) does not exist.

    0 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  12. Error in About_WorkflowCommonParameters

    In the About_WorkFlowCommonParameters, there is an error in the example describing the -PSParameterCollection, The example reads:
    -PSParameterCollection @{

         PSComputerName=&quot;Server01&quot;;  PSElapsedTimeoutSec=10;
    
    PSConnectionRetryCount=6},
    @{PSComputerName=&quot;*&quot;; PSElapsedTimeoutSec=20}

    In the second hash table, the example has '*' for the computer name. This is wrong - it needs a real computer name or PowerShell Gives and error.

    2 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  13. Remove-EventLog help appears nonsensical

    Someone on powershell team ought to have a look at this: https://technet.microsoft.com/en-us/library/hh849786(v=wps.640).aspx

    The syntax section 'source' parameterset doesn't show usage of the source param.

    The documentation text under "-InformationAction<System.Management.Automation.ActionPreference]>" and "-InformationVariable<System.String]>" are identical, and appear irrelevant to this command.

    (Also, for the love of god, can we have a bigger text entry box here?)

    4 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  14. ps5.0 manual bug 2:lack 'about_classes' item

    ps5.0 manual bug 2:lack 'about_classes' item

    there is little bug on ps5.0 manual in that web page.
    https://technet.microsoft.com/en-us/library/hh847856.aspx
    lack 'about_classes' item on web page main body.but there are in the list on the left.

    【reporter】
    By the chinese powershell study & research group. QQ group No. is 183173532

    btw:
    ps5.0 manual bug 1 by me:
    https://connect.microsoft.com/PowerShell/feedbackdetail/view/2046551
    today is 2016-02-27,This bug 1 hasn't been repaired.

    2 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  15. -New-NetTransportFilter LocalPortEnd<UInt16> has default port 1065

    Either provide explanation why start at 1065 & end at 65535 as defaults or correct the TechNet ?

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  16. Help for Install-Module does not reflect that -Force overrides repository installation policy

    The help document for Install-Module has the following text on the parameter -Force:
    -Force [<SwitchParameter>]

        Forces the installation of modules. If a module of the same name and version already exists on the computer,
    
    this parameter overwrites the existing module with one of the same name that was found by the command.

    This does not reflect that the parameter also makes Install-Module ignore the repository installation policy.

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  17. I wish the output properties of each cmdlet when used with System Center Virtual Machine Manager are somewhere documented.

    I wish the output properties of each powershell cmdlet when used with System Center Virtual Machine Manager are somewhere documented.

    3 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  18. Get-Help Certificate -ShowWindow

    Pretty sure this is a bug. When I run

    Get-Help Certificate -ShowWindow

    The window outputs:

    @{CmdletHelpPaths=@{CmdletHelpPath=@{command=System.Management.Automation.PSObject[]; id=Certificate}}; DetailedDescription=System.Management.Automation.PSObject[]; Notes=; Capabilities=System.Management.Automation.PSObject[]; Drives=System.Management.Automation.PSObject[]; Synopsis=Provides access to X.509 certificate stores and certificates in Windows PowerShell.; DynamicParameters=@{DynamicParameter=System.Management.Automation.PSObject[]}; RelatedLinks=@{navigationLink=System.Management.Automation.PSObject[]}; Filters=System.Management.Automation.PSObject[]; Tasks=@{Task=System.Management.Automation.PSObject[]}; Name=Certificate; Category=Provider; Component=; Role=; Functionality=}

    I'm not a programmer (yet!) but I think this shouldn't be happening.

    6 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  19. Syntax changes when using help like .Synopsis

    When I add a help section to my script, the Get-Help cmdlet displays a different syntax. Here is a MWE:

    Require -Version 4.0

    function global:Test-Syntax {

    &lt;#
    
    .Synopsis
    Cmdlet tests ValidateSet
    #&gt;
    [CmdletBinding()]
    # parameter check
    param (
    [ValidateSet(&quot;one&quot;, &quot;two&quot;, &quot;three&quot;)]
    [string]$testparam
    )
    Write-Verbose &quot;`$testparam: $testparam&quot;

    }

    Get-Help Test-Syntax shows the following in syntax section:

    SYNTAX

    Test-Syntax [[-testparam] &lt;String&gt;] [&lt;CommonParameters&gt;]
    

    After I remove .Synopsis or the whole help section, I receive the following from Get-Help:

    SYNTAX

    Test-Syntax [[-testparam] &lt;string&gt; {one | two | three}]  [&lt;CommonParameters&gt;]
    

    I would like to have the second one, because a user directly get the information…

    6 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  20. Expand-Archive -DestinationPath is not mandatory

    In the help for Expand-Archive, the DestinationPath parameter is mandatory, but that's incorrect. It's optional and the default is the local directory.

    PS C:\ps-test> get-help expand-archive -Parameter destinationpath

    -DestinationPath <String>

    Specifies the path to the folder in which you want the command
    
    specify a file name or file name extension. This parameter is

    Required? true
    Position? 2
    Default value
    Accept pipeline input? false
    Accept wildcard characters? false

    PS C:\ps-test> (get-command expand-archive).ParameterSets.Parameters | where Name -eq DestinationPath | ft Name, IsMandatory

    Name IsMandatory


    DestinationPath False
    DestinationPath False

    Also, -Online still goes to the future site, even in late December 2016.

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  • Don't see your idea?

Feedback and Knowledge Base