Windows PowerShell and PowerShell 7 compatibility
Microsoft's edit ·
Microsoft's commit message in MicrosoftDocs/PowerShell-Docs · commit 6557c93 · +12 −12 lines · also on GitHub
⋯ 300 unchanged lines
301301
- `pwsh` accepts the `-i` (or `-Interactive`) switch to indicate an interactive shell.
302302
This allows PowerShell to be used as a default shell on Unix platforms.
303303
- Removed parameters `-ImportSystemModules` and `-PSConsoleFile` from `pwsh.exe`.
304
−- Changed `pwsh -version` and built-in help for `pwsh.exe` to align with other native tools.
304
+- Changed `pwsh -Version` and built-in help for `pwsh.exe` to align with other native tools.
305305
- Invalid argument error messages for `-File` and `-Command` and exit codes consistent with Unix
306306
standards
307307
- Added `-WindowStyle` parameter on Windows. Similarly, package-based installations updates on
⋯ 38 unchanged lines
346346
On Unix, it is a convention for shells to accept `-i` for an interactive shell and many tools
347347
expect this behavior (`script` for example, and when setting PowerShell as the default shell) and
348348
calls the shell with the `-i` switch. This change is breaking in that `-i` previously could be used
349
−as short hand to match `-inputformat`, which now needs to be `-in`.
349
+as short hand to match `-InputFormat`, which now needs to be `-in`.
350350
351351
### Custom snap-ins
352352
⋯ 48 unchanged lines
401401
402402
### Unify cmdlets with parameter `-Encoding` to be of type `System.Text.Encoding`
403403
404
−The `-Encoding` value `Byte` has been removed from the filesystem provider cmdlets. A new parameter,
404
+The `-Encoding` value `Byte` has been removed from the FileSystem provider cmdlets. A new parameter,
405405
`-AsByteStream`, is now used to specify that a byte stream is required as input or that the output
406406
is a stream of bytes.
407407
⋯ 228 unchanged lines
636636
class M {
637637
static [int] DoubleStrLen([string] $value) { return 2 * $value.Length }
638638
639
− static [long] AggregateString([string[]] $values, [func[string, int]] $selector) {
639
+ static [long] AggregateString([string[]] $values, [Func[string, int]] $selector) {
640640
[long] $res = 0
641641
foreach($s in $values){
642642
$res += $selector.Invoke($s)
⋯ 86 unchanged lines
729729
error message:
730730
731731
```powershell
732
−Get-Childitem -Path c:\NotReal
732
+Get-ChildItem -Path C:\NotReal
733733
```
734734
735735
```Output
⋯ 67 unchanged lines
803803
The new **ThrottleLimit** parameter limits the number of script blocks running in parallel at a
804804
given time. The default is 5.
805805
806
−Use the `$_` variable to represent the current input object in the script block. Use the `$using:`
807
−scope to pass variable references to the running script block.
806
+Use the `$_` variable to represent the current input object in the script block. Use the `Using:`
807
+scope modifier to pass variable references to the running script block.
808808
809809
For more information, see [ForEach-Object][12].
810810
⋯ 88 unchanged lines
899899
log format and additional action would be required. With this change, W3C extended log format is
900900
supported.
901901
902
−### `Import-Csv` applies `PSTypeNames` upon import when type information is present in the CSV
902
+### `Import-Csv` applies `pstypenames` upon import when type information is present in the CSV
903903
904
−Previously, objects exported using `Export-CSV` with `TypeInformation` imported with
904
+Previously, objects exported using `Export-Csv` with `TypeInformation` imported with
905905
`ConvertFrom-Csv` were not retaining the type information. This change adds the type information to
906
−`PSTypeNames` member if available from the CSV file.
906
+`pstypenames` member if available from the CSV file.
907907
908908
### `-NoTypeInformation` is the default on `Export-Csv`
909909
910
−Previously, the `Export-CSV` cmdlet would output a comment as the first line containing the type
910
+Previously, the `Export-Csv` cmdlet would output a comment as the first line containing the type
911911
name of the object. The change excludes the type information by default because it's not understood
912912
by most CSV tools. This change was made to address customer feedback.
913913
⋯ 49 unchanged lines
963963
function has now been removed.
964964
965965
Also, the `help` function changed to use `more.com` on Windows, or the system's default pager
966
−specified by `$env:PAGER` on non-Windows platforms.
966
+specified by `$Env:PAGER` on non-Windows platforms.
967967
968968
### `cd DriveName:` now returns users to the current working directory in that drive
969969
⋯ 285 unchanged lines
Microsoft's Markdown source from MicrosoftDocs/PowerShell-Docs, © Microsoft Corporation, under CC BY 4.0. Changed lines with up to 3 unchanged lines around each; ChangeIntel kept this copy 10 Oct 03:16 UTC. The commit date is when the source changed, which can be hours or days before Learn published it.