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. Add -?? "common parameter" to retrieve full help

    Votes from Connect: 10

    Original Date Submitted: 12/10/2011 12:03:55 AM

    Description:
    ********Contact Information********
    Handle: JoshGav
    Site Name: PowerShell
    Feedback ID: 712794
    ***************************************

    Frequency: Always Happens
    Regression: Yes, this happens in previous released versions

    Problem Description:
    Often the user wants to retrieve the full help when executing a command, not just the default help topics. Add a "-??" parameter to complement the "-?" parameter, with the -?? returning the same as Get-Help -Full.

    This feedback came from a student at a PFE PowerShell workshop.

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 712794 (http://connect.microsoft.com/PowerShell/feedback/ViewFeedback.aspx?FeedbackID=712794).

    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  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
  2. New Where-Object Syntax Error

    Votes from Connect: 18

    Original Date Submitted: 9/23/2011 7:23:48 PM

    Description:
    ********Contact Information********
    Handle: Steve Murawski
    Site Name: PowerShell
    Feedback ID: 690427
    ***************************************

    Frequency: Always Happens
    Regression: No, this is new to the most recent version

    Problem Description:
    The new Where-Object syntax does not properly evaluate calling a method on a property that returns a Boolean.

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 690427 (http://connect.microsoft.com/PowerShell/feedback/ViewFeedback.aspx?FeedbackID=690427).

    Repro Steps:
    This will error:
    Get-Command | ? parameters.containskey('Credential') | sort name

    This will not:
    Get-Command | ? {$_.parameters.containskey('Credential')} | sort name

    Expected Results:
    Both commands should…

    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  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
  3. We need a Get-Parameter cmdlet

    Votes from Connect: 41

    Original Date Submitted: 9/8/2011 8:47:16 PM

    Description:

    ********Contact Information********
    Handle: HalR
    Site Name: PowerShell
    Feedback ID: 687640
    ***************************************

    Frequency: Always Happens
    Regression: Yes, this happens in all previous versions

    Problem Description:
    Something similar to the Get-Parameter function published on PoshCode (see http://poshcode.org/?lang=&q=get-parameter for latest version) needs to be included in PowerShell. The purpose of Get-Parameter is to parse the output of a cmdlet or function's CommandInfo returned from Get-Command, and turn it into a more useful format by which the end user can discover more about:
    - what paraemtersets exist?
    - what triggers a parameterset? (i.e.…

    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  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
  4. Easy access to current date and time

    Votes from Connect: 56

    Original Date Submitted: 4/12/2011 2:47:03 PM

    Description:
    ********Contact Information********
    Handle: Shay Levi
    Site Name: PowerShell
    Feedback ID: 659747
    ***************************************

    Frequency: Always Happens
    Regression: Yes, this happens in all previous versions

    Problem Description:
    PowerShell has an automatic variable, $pwd. One of its great usage is that its value is evaluated each time you call it and you can access its members without enclosing it in parenthesis.

    I would like to suggest a new automatic variable (tied variable), $Now, that returns the current date and time each time it's called.

    Having $Now as a new automatic variable 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  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
  5. Option for Format-Table to set color of a column

    Votes from Connect: 16

    Original Date Submitted: 2/27/2011 6:44:56 PM

    Description:
    ********Contact Information********
    Handle: Soós Tibor
    Site Name: PowerShell
    Feedback ID: 648076
    ***************************************

    Frequency: Always Happens
    Regression: Yes, this happens in all previous versions

    Problem Description:
    There is currently an option for Format-Table to set the Label, FormatString, Width and Alignment of a table coulum. My suggestion is to extend these options with ForegroundColor and BackgroundColor of the column.

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 648076 (http://connect.microsoft.com/PowerShell/feedback/ViewFeedback.aspx?FeedbackID=648076).

    Repro Steps:
    Expected Results:

    Internal BugId: 2825

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  6. v3 suggestion: PowerShell FileSystemProvider should support transactions (TxF)

    Votes from Connect: 56

    Original Date Submitted: 1/13/2011 12:03:33 AM

    Description:
    ********Contact Information********
    Handle: Oisin Grehan
    Site Name: PowerShell
    Feedback ID: 635713
    ***************************************

    Frequency: Always Happens
    Regression: Yes, this happens in all previous versions

    Problem Description:
    From Vista onwards, Windows supports both a transacted registry (TxR) and transacted filesystem (TxF). With powershell v2, we got TxR support. For v3 or beyond, it would be great to have TxF support. A good example taking Pscx's archive cmdlets into account would be the following pipeline:

    PS> dir c:\logs\ -rec -inc *.log -usetx | write-zip -removeoriginal -usetx | move-item c:\archived_logs\ -usetx

    This will…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  7. add Start-Transcript filters

    Votes from Connect: 21

    Original Date Submitted: 10/8/2010 4:46:21 PM

    Description:
    ********Contact Information********
    Handle: TobiasWeltner
    Site Name: PowerShell
    Feedback ID: 611703
    ***************************************

    Frequency: Always Happens
    Regression: Yes, this happens in all previous versions

    Problem Description:
    Start-Transcript logs input and output. This creates huge log files.
    There should be a switch that enables Start-Transcript to only log the inputs and omit the outputs. Optionally, there could be an indicator whether a command completed successfully, was aborted or raised an exception.

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 611703 (http://connect.microsoft.com/PowerShell/feedback/ViewFeedback.aspx?FeedbackID=611703).

    Repro Steps:
    currently default…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  8. Get-Member and Online parameter

    Votes from Connect: 16

    Original Date Submitted: 8/9/2010 1:34:16 AM

    Description:
    ********Contact Information********
    Handle: Aleksandar Nikolic
    Site Name: PowerShell
    Feedback ID: 584518
    ***************************************

    Frequency: Always Happens
    Regression: No, this is new to the most recent version

    Problem Description:
    I would like that Get-Member cmdlet supports Online parameter in V3 (similar to Get-Help in V2):

    Get-Process | Get-Member -Online

    That command would open the .NET Framework page in MSDN (http://msdn.microsoft.com/en-us/library/system.diagnostics.process.aspx).

    dir | Get-Member -Online

    That command would open the .NET Framework pages in MSDN (http://msdn.microsoft.com/en-us/library/system.io.fileinfo.aspx and http://msdn.microsoft.com/en-us/library/system.io.directoryinfo.aspx).

    Product Studio item created by Connect Synchronizer due to creation…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  9. PowerShell should implement an Unless operator

    Votes from Connect: 15

    Original Date Submitted: 7/21/2010 11:36:19 AM

    Description:
    ********Contact Information********
    Handle: bigjimslade80465
    Site Name: PowerShell
    Feedback ID: 576911
    ***************************************

    Frequency: Always Happens
    Regression: No, this is new to the most recent version

    Problem Description:
    Currently, I need to do this:

    if(! ($bar)) { & foo}

    I would like to be able to do this:

    unless($bar) { & foo}

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 576911 (http://connect.microsoft.com/PowerShell/feedback/ViewFeedback.aspx?FeedbackID=576911).

    Repro Steps:
    Currently, I need to do this:

    if(! ($bar)) { & foo}

    I would like to be able to do this:

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  10. ArgumentList parameter to Start-Job Incomplete

    Votes from Connect: 15

    Original Date Submitted: 5/29/2010 12:09:48 AM

    Description:
    ********Contact Information********
    Handle: Clint B.
    Site Name: PowerShell
    Feedback ID: 563695
    ***************************************

    Frequency: Always Happens
    Regression: I don't know if this issue existed previously

    Problem Description:
    The -ArgumentList parameter is described as passing arguments 'for the script that is specified by the FilePath parameter', which is true. But it also specifies the arguments to a scriptblock specified by the ScriptBlock parameter.

    Additionally the help says that "Because all of the values that follow the ArgumentList parameter name are interpreted as being values of ArgumentList, the ArgumentList parameter should be…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  11. v2 bug: test-path returns true for pure whitespace path.

    Votes from Connect: 10

    Original Date Submitted: 5/22/2010 3:29:42 AM

    Description:
    ********Contact Information********
    Handle: x0n
    Site Name: PowerShell
    Feedback ID: 560761
    ***************************************

    Frequency: Always Happens
    Regression: I don't know if this issue existed previously

    Problem Description:
    Calling test-path " " returns $true. I would expect $false unless a file named " " really did exist.

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 560761 (http://connect.microsoft.com/PowerShell/feedback/ViewFeedback.aspx?FeedbackID=560761).

    Repro Steps:
    given there is no file or folder named " " in the root of C:\

    ps c:\> test-path " "
    True

    Expected Results:
    ps> test-path "…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  12. Get-ChildItem gets FileInfo constructed in different ways depending on parameters

    Votes from Connect: 12

    Original Date Submitted: 4/30/2010 9:13:05 PM

    Description:
    ********Contact Information********
    Handle: Roman Kuzmin
    Site Name: PowerShell
    Feedback ID: 556004
    ***************************************

    Frequency: Always Happens
    Regression: I don't know if this issue existed previously

    Problem Description:
    The more detailed question and investigation is in here:
    http://stackoverflow.com/questions/2744047/mysterious-different-conversion-to-string-of-seemingly-same-input-data

    Items returned by (Get-ChildItem <path>) and (Get-ChildItem <path> -Include *) are converted to strings differently. Different results of the two commands below, IMHO, do not make any practical sense and only lead to confusion and bugs:

    # This command gets just file names
    [string[]](Get-ChildItem C:\TEMP\Test)

    # This command gets full file paths
    [string[]](Get-ChildItem…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  13. Problem in Exporting SSRS report to CSV format:

    Votes from Connect: 13

    Original Date Submitted: 4/6/2010 7:37:36 PM

    Description:
    ********Contact Information********
    Handle: vitthalbhovi
    Site Name: PowerShell
    Feedback ID: 549004
    ***************************************

    Frequency: Always Happens
    Regression: I don't know if this issue existed previously

    Problem Description:
    Description for Problem:

    The CSV export uses the textbox names for the column headings in SSRS 2005/2008 due this column names are not coming properely in CSV file but in SSRS report its coming fine.i need same column names as in SSRS report (bcoz in my report column names are coming from Expressions (Column names are not hardcoded))

    Product Studio item created by Connect…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  14. Change default behavior of module import

    Votes from Connect: 15

    Original Date Submitted: 3/31/2010 2:02:45 PM

    Description:
    ********Contact Information********
    Handle: Martin Zugec
    Site Name: PowerShell
    Feedback ID: 546066
    ***************************************

    Frequency: Always Happens
    Regression: Yes, this happens in previous beta versions

    Problem Description:
    Please re-consider default behavior of Import-Module. Current issue is that if you want to use namespaces (module\verb-noun), you still need to pay attention to name of your functions, because last one always wins.

    This forces us to use SCCM\Get-SccmObject always simply because of the fact that we never know which function we will overwrite. SCCM\Get-Object would overwrite Get-Object in this case. This makes modules…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  15. switch statement should accept elements from the pipeline.

    Votes from Connect: 17

    Original Date Submitted: 12/9/2009 12:06:32 AM

    Description:
    ********Contact Information********
    Handle: Xaegr
    Site Name: PowerShell
    Feedback ID: 518895
    ***************************************

    Frequency: Always Happens
    Regression: Yes, this happens in all previous versions

    Problem Description:
    When you need to send a array of objects to switch statement, you cannot just pipe it:
    PS > Get-EventLog security -newest 100 | Switch ($_.EventId) {672 {$Id_672++} 680 {$Id_680++} }
    or
    Get-EventLog security -newest 100 | Select -expandProperty eventid | Switch {672 {$Id_672++} 680 {$Id_680++}}

    You need to specify full expression as "argument" for a switch, like this:
    Switch (Get-EventLog security -newest 100 |…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  16. v2: import-module failing should probably be a terminating error

    Votes from Connect: 12

    Original Date Submitted: 10/31/2009 4:57:26 AM

    Description:
    ********Contact Information********
    Handle: x0n
    Site Name: PowerShell
    Feedback ID: 506808
    ***************************************

    Frequency: Always Happens
    Regression: Yes, this happens in all previous versions

    Problem Description:
    I see that trying to import a module where the module does not exist yields a non-terminating error. I think that really should be a full-blown terminating error; a failure to load a dependency like that really should stop the script. Having to use get-module -list available, or bump $erroractionpreference up to "stop" just to let try/catch work seems like a bit of a hack.

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  17. AutoHelp with Get-Help and Advanced Functions - needs improving

    Votes from Connect: 13

    Original Date Submitted: 12/27/2008 11:39:54 PM

    Description:

    ********Contact Information********
    Handle: tfl
    Site Name: PowerShell
    Feedback ID: 389767
    ***************************************

    Frequency: Always Happens
    Regression: No, this is new to the most recent version

    Problem Description:
    I think the new auto-help stuff is fantastic. But it's a tad buggy and inconsistent.

    To demonstrate this, I've created a simle advanced function file (get-autohelp.ps1) attached. You will need to save this file then run get-help against it to see the errors I note.

    Here are the issues:

    1. You can not specify a .NAME section in auto-help. If you do, then…

    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  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
  18. Make all cmdlet parameters accept scriptblocks

    Votes from Connect: 14

    Original Date Submitted: 7/23/2008 3:57:45 AM

    Description:

    ********Contact Information********
    Handle: Dmitry Sotnikov
    Site Name: PowerShell
    Feedback ID: 357352
    ***************************************

    Frequency: Always Happens
    Regression: Yes, this happens in previous released versions

    Problem Description:
    Some cmdlets accept scriptblocks for some parameters, while others don't. This is very inconsistent and confusing.

    On the one hand you can use this syntax for these examples: http://blogs.msdn.com/powershell/archive/2008/04/21/mindwarpingpower-cmdlets-scriptblock-parameters.aspx

    On the other, something like this would fail for no apparent reason:
    Get-DistributionGroup | Set-DistributionGroup -DisplayName {$_.name}

    This is actually (IMHO) a design flaw of PowerShell (unfortunately still present in v2 ) – you (if…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  19. Support text-oriented configuration management

    ... in a folder at C:\config containing text files (and perhaps a similar folder in the user's home directory). Changing those text files would directly apply changes to Windows settings. Services could read those files directly or use a Windows text-based configuration management API.

    Text-oriented configuration has many advantages: it makes devops-style workflows much more simple, entire server configurations could be versioned in git or svn along with the apps they host, spinning up new servers would be much simpler, and tools like Chef and Puppet would integrate far more smoothly and simply with Windows.

    I suggest this as a…

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

    We’ll send you updates on this idea

    3 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  20. Backwards Compatibility for cmdlets

    All new cmdlets only seem to support 2012+ however for those of us with a mixed estate means we have to use other methods for migrations than we do for live servers and would be really good if tools were backwards compatible.. rather than having to develop our own or rely on 3rd party alternatives.

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

    We’ll send you updates on this idea

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

Feedback and Knowledge Base