diff options
Diffstat (limited to 'powershell.html.markdown')
| -rw-r--r-- | powershell.html.markdown | 14 | 
1 files changed, 12 insertions, 2 deletions
| diff --git a/powershell.html.markdown b/powershell.html.markdown index 4bc1ab39..fc944b85 100644 --- a/powershell.html.markdown +++ b/powershell.html.markdown @@ -18,6 +18,7 @@ rather than plain text.  [Read more here.](https://technet.microsoft.com/en-us/library/bb978526.aspx)  If you are uncertain about your environment: +  ```  Get-ExecutionPolicy -List  Set-ExecutionPolicy AllSigned @@ -33,6 +34,7 @@ $PSVersionTable  ```  Getting help: +  ```  # Find commands  Get-Command about_* # alias: gcm @@ -49,6 +51,7 @@ Update-Help # Run as admin  ```  The tutorial starts here: +  ```  # As you already figured, comments start with # @@ -244,10 +247,12 @@ function New-Website() {  [System.Reflection.Assembly]::LoadWithPartialName('Microsoft.VisualBasic')  # Note that .NET functions MUST be called with parentheses -# while PS functions CANNOT be called with parentheses +# while PS functions CANNOT be called with parentheses. +# If you do call a cmdlet/PS function with parentheses, +# it is the same as passing a single parameter list  $writer = New-Object System.IO.StreamWriter($path, $true)  $writer.Write([Environment]::NewLine) -$write.Dispose() +$writer.Dispose()  ### IO  # Reading a value from input: @@ -265,12 +270,14 @@ Get-Command ConvertTo-*,ConvertFrom-*  # Refresh your PATH  $env:PATH = [System.Environment]::GetEnvironmentVariable("Path", "Machine") +   	";" + [System.Environment]::GetEnvironmentVariable("Path", "User") +  # Find Python in path  $env:PATH.Split(";") | Where-Object { $_ -like "*python*"}  # Change working directory without having to remember previous path  Push-Location c:\temp # change working directory to c:\temp  Pop-Location # change back to previous working directory +# Aliases are: pushd and popd  # Unblock a directory after download  Get-ChildItem -Recurse | Unblock-File @@ -292,6 +299,7 @@ $Shortcut.Save()  Configuring your shell +  ```  # $Profile is the full path for your `Microsoft.PowerShell_profile.ps1`  # All code there will be executed when the PS session starts @@ -304,6 +312,7 @@ if (-not (Test-Path $Profile)) {  ```  Interesting Projects   +  * [Channel9](https://channel9.msdn.com/Search?term=powershell%20pipeline#ch9Search&lang-en=en) PowerShell tutorials  * [PSGet](https://github.com/psget/psget) NuGet for PowerShell  * [PSReadLine](https://github.com/lzybkr/PSReadLine/) A bash inspired readline implementation for PowerShell (So good that it now ships with Windows10 by default!) @@ -314,6 +323,7 @@ Interesting Projects  * [PowerShell Community Extensions](http://pscx.codeplex.com/) (Dead)  Not covered   +  * WMI: Windows Management Intrumentation (Get-CimInstance)    * Multitasking: Start-Job -scriptBlock {...},   * Code Signing | 
