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. Out-Gridview should provide a count of the number of objects displayed

    It would be very useful if Out-Gridview provided a build in display of the number of objects in the grid. This could be in a status bar at the bottom or at the top along with the Add Criteria button.

    This would update as the filters are applied. It would also be nice if the selected items had a count as well.

    It would be especially useful with -passthru as you could have an estimate on the number of objects being passed to the next cmdlet in the pipeline.

    You can come up with the count by using measure-object, but…

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

    We’ll send you updates on this idea

    4 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →

    It would certainly be cool, but we’re not really investing in Out-GridView at this point in time. I’ll leave this open as a Survey to see if the demand surpasses our bar (though I’d caveat that demand would have to be fairly high).

    Thanks,
    Joey

  2. Powershell and collections (in particular, collection of preference variables)

    I've been struggling with exporting and importing preference variables from local to remote sessions. One idea that came to me was the idea of a collection of preference variables. According to a fellow at StackOverflow, Powershell doesn't institute these kinds of collections. If this is true, I would kindly request them to be implemented.

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

    We’ll send you updates on this idea

    3 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →

    What are the environment variables you are interested in exporting? If it’s possible to enumerate them, then you can set them up in multiple locations.
    Take a look at the New-PSSessionConfigurationFile cmd (start with the help for it). It’s designed to enable part of the scenario you are interested in, but not sure if that is enough of what you are asking for.

  3. Create a SendTo-SysLog cmdlet and include it by default

    Please include by default a SendTo-Syslog cmdlet to send log messages to UNIX, Linux and SIEMs.

    If you were to add a syslog service role to send or accept syslog messages in a scalable way which integrated with the Windows event logs, that would be great too, but a cmdlet to just send UDP packets is easy enough to include in PoSh 5.1 right now.

    Thanks!

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

    We’ll send you updates on this idea

    6 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  4. Start-PcsvDevice is not up to current spec

    PROBLEM:
    I have been using the PcsvDevice commands to use IPMI out-of-band management to my servers. It works great for systems that are configured for legacy boot. But, the reboot does not work properly for systems that are requesting UEFI reboot. Here are the commands that work correctly for legacy booting:

    Set-PcsvDeviceBootConfiguration -TargetAddress $ipAddr -Credential $creds -ManagementProtocol IPMI -OneTimeBootSource $device.StructuredBootString[0]
    Start-PcsvDevice -TargetAddress $ipAddr -Credential $creds -ManagementProtocol IPMI

    The purpose of the above commands is to force a LAN boot no matter what is configured as the first boot device on the targeted server. This is handy if I want to…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  5. Bug: Console output appears out of order

    In 5.0, objects returned from a script will appear in the console only after the script has completely finished if no formatting data is defined for that object type.

    Example:

    Write-Warning "Before"
    
    Get-Service E* | select Status, Name, DisplayName
    Write-Warning "After"

    Output:

    WARNING: Before
    
    

    WARNING: After
    Status Name DisplayName
    ------ ---- -----------
    Stopped EapHost Extensible Authentication Protocol
    Running EFS Encrypting File System (EFS)
    Running eventlog Windows Event Log
    Running EventSystem COM+ Event System

    Details
    - This did not happen before PowerShell 5.0
    - This happens both in the PowerShell console and ISE
    - The issue affects all objects that have…

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

    We’ll send you updates on this idea

    survey  ·  3 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  6. Implement the && and || operators that bash has

    Votes from Connect: 22

    Original Date Submitted: 2/8/2013 8:32:38 AM

    Description:
    Contact Information
    Handle: antize
    Site Name: PowerShell
    Feedback ID: 778798


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

    Problem Description:
    Discussion about this at stackoverflow - http://stackoverflow.com/questions/563600/can-i-get-to-work-in-powershell

    Jeffery Snover said to request it here so here I am :D

    Here is a description of what they do -- http://www.gnu.org/software/bash/manual/bashref.html#Lists

    An AND list has the form

          command1 && command2
    

    command2 is executed if, and only if, command1 returns an exit status of zero.

    An OR list has the form

          command1 || command2
    

    command2 is executed if, and…

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

    We’ll send you updates on this idea

    2 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  7. Create symbolic link to a shadow copy using New-Item

    I'm able to make a symbolic link to a shadow copy using CMD mklink and kernel32.dll.CreateSymbolicLink
    But I'm not able to do this using PS>New-Item
    E.g.:
    New-Item -Path c:\temp\SL1 -ItemType SymbolicLink -Value \?\GLOBALROOT\Device\HarddiskVolumeShadowCopy7\

    I get an error saying the path doesn't exist (that is the VSS path)

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  8. Get-TLSCipherSuite does not output well-behaved objects (Get-TlsEccCurve too)

    Get-TLSCipherSuite does not output well-behaved objects.

    Test machine has PSVersion 5.1.14393.0 on the RTM eval version of Server 2016 Datacenter with the GUI desktop. Similar output with 5.1.14393.206 on Windows 10 Pro fully patched.

    The following command works as expected:

     Get-TlsCipherSuite | Format-Table Name
    

    But the following commands either output nothing or the wrong objects:

     Get-TlsCipherSuite | Select-Object Name
    
    

    Get-TlsCipherSuite | Where { $_.Hash -eq 'MD5' }

    Sometimes, just running Get-TlsCipherSuite will output objects that have blank properties that should not be blank, such as with the following:

     Get-TlsCipherSuite | Format-Table Cipher,Hash,Exchange
    
    

    [Microsoft.WindowsAuthenticationProtocols.Commands.TlsCipherSuite]::new('TLS_PSK_WITH_AES_256_GCM_SHA384')

    When piping into Get-Member, we get the…

    5 votes
    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 version of DEVCON.EXE or Device Manager cmdlets

    DEVCON.EXE can be used to install, uninstall, enable, disable, configure or query devices (as seen in Device Manager) from the command line. Here is the description:

    https://msdn.microsoft.com/en-us/library/windows/hardware/ff544707(v=vs.85).aspx

    To get DEVCON.EXE, you have to download the entire Windows Drivers Kit (WDK), which is 803MB in size, and, as I understand it, DEVCON cannot be legally redistributed or shared separately.

    It would be good to have a PowerShell cmdlet to replace DEVCON that is either installed by default or available in the PSGallery.

    Or just allow DEVCON.EXE to be downloaded separately from the WDK somehow, like through NuGet, PSGallery or anywhere.

    Or…

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

    We’ll send you updates on this idea

    6 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →

    The PnpDevice module contains some of the features available in Devcon.exe. If there are tasks that you cannot perform using it, please let us know what is missing, along with a basic comment of why you would use them.

  10. The <preview> New-AzureADUserAppRoleAssignment command set errors

    The <preview> New-AzureADUserAppRoleAssignment command set is much appreciated for those of us trying to script assignment of multiple users to various azure apps. Unfortunately, it is not quite working yet, as confirmed by Microsoft support. Looking forward to new versions of this command in the future. Following the current command specifically, still receiving error message...

    New-AzureADUserAppRoleAssignment : Error calling NewUserAppRoleAssignment:
    StatusCode: BadRequest
    ErrorCode: Request_BadRequest
    Message: One or more properties are invalid.
    At line:1 char:1
    + New-AzureADUserAppRoleAssignment -ObjectId f5a1fbb2-f28b-458b-ab17-06 ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    + CategoryInfo          : NotSpecified: (:) [New-AzureADUserAppRoleAssignm
    

    ent], ApiException

    + FullyQualifiedErrorId : Microsoft.Open.AzureAD16.Client.ApiException,Mic
    

    rosoft.Open.AzureAD16.PowerShell.NewUserAppRoleAssignment

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  11. PSScriptRoot in ps1 script in PSv3 is empty in ISE

    Votes from Connect: 13

    Original Date Submitted: 11/1/2012 3:56:26 AM

    Description:
    Contact Information
    Handle: J Stangroome
    Site Name: PowerShell
    Feedback ID: 769359


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

    Problem Description:
    In the PSv3 documentation, $PSScriptRoot is now an automatic variable that is populated for both modules and ps1 scripts. It works from PowerShell.exe but not from the ISE

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

    Repro Steps:
    1. Create a new script (eg c:\test.ps1) with the contents: gv PSScriptRoot
    2. From PowerShell.exe, execute the…

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

    We’ll send you updates on this idea

    8 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  12. Missing trigger options in New-ScheduledTaskTrigger

    Votes from Connect: 3

    Original Date Submitted: 10/30/2014 5:41:25 PM

    Description:
    Contact Information
    Handle: ulrichb
    Site Name: PowerShell
    Feedback ID: 1015225


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

    Problem Description:
    New-ScheduledTaskTrigger offers just a subset of the trigger options. Things like "On an (event log) event", or "On workstation (un)lock" are missing.

    We just found ugly workarounds to add these (e.g. event log) triggers by using "schtasks.exe /create /xml" or using the COM "TaskScheduler" class.

    New-ScheduledTaskTrigger should allow specifying all options the Task Scheduler UI offers. As there already exists an XML representation of these triggers…

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

    We’ll send you updates on this idea

    3 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  13. ConvertTo-Html incorrectly labels default single column

    ConvertTo-Html works as desired when the output contains two or more columns.

    ConvertTo-Html works as desired when the output contains only one column derived from a property that was explicitly named in the -Properties parameter.

    However, if a match string is used for the -Property parameter, or the -Property parameter is omitted (and presumably defaults to match string "*"), and the output contains only a single column, the column header incorrectly contains the match string instead of the name of the property.

    For example, this:

    $X = [pscustomobject]@{ Name = 'Joe' }
    ConvertTo-Html -InputObject $X -Fragment

    Results in this:

    <table> …

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

    We’ll send you updates on this idea

    2 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  14. UTF-8 without BOM [Missing Encoding Option]

    Votes from Connect: 4

    Original Date Submitted: 10/6/2014 10:15:42 AM

    Description:
    Contact Information
    Handle: DScripter
    Site Name: PowerShell
    Feedback ID: 993163


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

    Problem Description:
    I had an issue recently with generating JSON files that needed to be encoded in 'UTF-8 without BOM.' Cmdlets with the -Encoding parameter do not have this format as a possible encoding option.

    It looks like the Unicode standard recommends not using the BOM, either, as mentioned in this conversation:
    http://stackoverflow.com/questions/2223882/whats-different-between-utf-8-and-utf-8-without-bom

    Here is the Standard documentation:
    http://www.unicode.org/versions/Unicode5.0.0/ch02.pdf
    Quote given from Page 30:
    "... Use of a…

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

    We’ll send you updates on this idea

    1 comment  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  15. ConvertFrom-JSON doesn't allow you to modify the maxJSONLength value

    Votes from Connect: 26

    Original Date Submitted: 9/18/2013 10:01:50 PM

    Description:
    Contact Information
    Handle: Mark E. Schill
    Site Name: PowerShell
    Feedback ID: 801353


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

    Problem Description:
    ConvertFrom-JSON doesn't allow you to modify the maxJSONLength value. By default it is set to 2MB so if you have a JSON string that is longer it will error out trying to convert to a PowerShell object.

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

    Repro Steps:
    Use ConvertFrom-JSON on any string over…

    16 votes
    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. Send-MailMessage should support ReplyTo

    Votes from Connect: 34

    Original Date Submitted: 8/23/2012 10:09:13 PM

    Description:
    Contact Information
    Handle: RyanM_NU
    Site Name: PowerShell
    Feedback ID: 759227


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

    Problem Description:
    The .NET Mail.MailMessage Class has a ReplyToList property (as well as an obsolete ReplyTo property):

    http://msdn.microsoft.com/en-us/library/system.net.mail.mailmessage.replytolist.aspx

    "Use the ReplyToList property to indicate the list of addresses other than the From address to use to reply to this message.
    The ReplyToList property replaces the ReplyTo property that only allows a single address to reply to."

    The Send-MailMessge cmdlet should also support ReplyTo functionality.

    Product Studio item created…

    16 votes
    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. test-connection throws quota exception when passed large list of computernames

    Votes from Connect: 13

    Original Date Submitted: 1/21/2011 3:36:17 AM

    Description:
    Contact Information
    Handle: jim christopher
    Site Name: PowerShell
    Feedback ID: 637184


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

    Problem Description:
    When passing large (e.g., >650) host names to the test-connection cmdlet, the cmdlet raises a WMI quota violation exception.

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

    Repro Steps:
    $ra = @(0..1000) | %{ $env:computername };
    test-connection $ra;

    Expected Results:
    I expect test-connection to manage the WMI underpinnings so I don't receive the quota violation.

    16 votes
    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 →
  18. -windowstyle hidden

    Votes from Connect: 3

    Original Date Submitted: 8/6/2014 2:59:46 AM

    Description:
    Contact Information
    Handle: TheWez
    Site Name: PowerShell
    Feedback ID: 938940


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

    Problem Description:
    When running powershell.exe -windowstyle hidden a powershell prompt is still presented to the user for a short period. This period is long enough that users are able to exit the window and causing failed SCCM deployments.

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

    Repro Steps:
    Run powershell.exe -windowstyle hidden <anyscript> - A powershell prompt will be…

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

    We’ll send you updates on this idea

    3 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  19. out-host paging doesn't work in ISE

    Votes from Connect: 4

    Original Date Submitted: 12/27/2014 2:18:58 PM

    Description:
    Contact Information
    Handle: john.s2011n
    Site Name: PowerShell
    Feedback ID: 1066960


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

    Problem Description:
    | out-host paging or | more doesn't work in iSE console pane (bottom pane)
    for example Get-process | out-host paging
    Hope this be added in PS 5.0

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

    Repro Steps:
    Expected Results:

    Internal BugId: 13163

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

    We’ll send you updates on this idea

    2 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  20. In PowerShell V3 you can't redirect stderr to stdout

    Votes from Connect: 22

    Original Date Submitted: 10/1/2012 9:54:45 PM

    Description:
    Contact Information
    Handle: Keith Hill MVP
    Site Name: PowerShell
    Feedback ID: 765551


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

    Problem Description:
    I should be able to execute an exe and redirect it's stderr output to stdout and then not get any error records generated. An error record is always generated even when 2>&1 is specified. This happens in both the console and ISE (at least it consistently fails).

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 765551 (…

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

    We’ll send you updates on this idea

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

Feedback and Knowledge Base