89 lines
3 KiB
Markdown
89 lines
3 KiB
Markdown
|
Basics (WIP)
|
|||
|
============\
|
|||
|
PowerShell ist eine Objekt-Orientierte Shell. Sie wurde entwickelt um die antike CommandPrompt abzulösen.\
|
|||
|
Man kann alle CMD-Commands in PowerShell ausführen, um jedoch PowerShell-Commands in CMD auszuführen muss man:\
|
|||
|
`powershell Get-ChildItem`\
|
|||
|
PowerShell mit dem Command dem man ausführen möchte rufen.
|
|||
|
|
|||
|
**PowerShell ist Case-Insensitive** das heisst das auch Commands wie: `gEt-hElP GeT-lOcAlUsEr` problemlos ausgeführt werden können.\
|
|||
|
Commands in PowerShell sind immer <Verb>-<Nomen>.
|
|||
|
|
|||
|
Hotkeys
|
|||
|
-------\
|
|||
|
`CTRL` + `L` sendet der Shell den Clear-Command
|
|||
|
|
|||
|
`↑↓` Erlaubt das durchsuchen der Command-History
|
|||
|
|
|||
|
`TAB` AutoComplete des aktuellen Commands oder `SHIFT` + `TAB` um durch mögliche AutoComplete's durchzusuchen.
|
|||
|
|
|||
|
`CTRL` + `ALT` + `SHIFT` + `?` Gibt eine Liste von allen Hotkeys im Terminal aus.
|
|||
|
|
|||
|
### Help\
|
|||
|
|
|||
|
Mit `Get-Help <command>` bekommt man Hilfe zu einem spezifischen Command.\
|
|||
|
Diese Liste kann mit `Update-Help` aktualisiert werden.
|
|||
|
|
|||
|
## Getting Around
|
|||
|
|
|||
|
### Get-Location\
|
|||
|
|
|||
|
Um herauszufinden wo wir uns gerade befinden benutzen wir den Command: `Get-Location`
|
|||
|
|
|||
|

|
|||
|
|
|||
|
### Get-ChildItem
|
|||
|
|
|||
|
Um Inhalte aus Ordner anzeigen zu lassen brauchen wir: `Get-ChildItem`\
|
|||
|
Wir können uns Inhalte ausgeben die nicht im unserem aktuellen Ordner ist ausgeben: `Get-ChildItem <path-to-folder>`\
|
|||
|
Dieser Command hat folgende Aliase: `gci`, `ls`
|
|||
|
|
|||
|

|
|||
|
|
|||
|
### Set-Location
|
|||
|
|
|||
|
Um uns schliesslich in ein anderes Verzeichnis zu bewegen verwenden wir: `Set-Location <path-to-folder>`\
|
|||
|
Dieser Command hat folgende Aliase: `cd`
|
|||
|
|
|||
|

|
|||
|
|
|||
|
### Clear-Host
|
|||
|
|
|||
|
Um das Terminal-Fenster aufzuräumen oder wieder leer zu machen benutzen wir: `Clear-Host`\
|
|||
|
Dieser Command hat folgende Aliase: `clear`, `cls`
|
|||
|
|
|||
|
## User- & Group-Management
|
|||
|
|
|||
|
### Get-LocalUser
|
|||
|
|
|||
|
Mit dem Command: `Get-LocalUser` werden uns alle Lokale-Benutzer angezeigt
|
|||
|
|
|||
|

|
|||
|
|
|||
|
### New-LocalUser
|
|||
|
|
|||
|
Um einen neuen Benutzer zu erstellen können wir: `New-LocalUser -Name "JLawrence" -NoPassword` brauchen.
|
|||
|
|
|||
|
\
|
|||
|
Danach können wir eine Variable setzten: `$Password = Read-Host -AsSecureString`
|
|||
|
|
|||
|
Mit dem `$` sagen wir PowerShell das wir eine Variable erstellen.\
|
|||
|
Der Command `Read-Host` sorgt dafür das PowerShell ein string entgegen nimmt.\
|
|||
|
Schliesslich mit `-AsSecureString` können wir dafür sorgen das unsere Eingabe mit '\*' überdruckt wird.
|
|||
|
|
|||
|

|
|||
|
|
|||
|
### Set-LocalUser
|
|||
|
|
|||
|
Um Benutzer zu bearbeiten verwenden wir: `Set-LocalUser`\
|
|||
|
Um also dem erstellten Benutzer ein Password hinzuzufügen werden wir den Command `Set-LocalUser -Name JLawrence -Password $Password` verwenden.
|
|||
|
|
|||
|

|
|||
|
|
|||
|
### Get-LocalGroup
|
|||
|
|
|||
|
`Get-LocalGroup` gibt uns alle lokale Benutzer im Terminal aus:
|
|||
|
|
|||
|

|
|||
|
|
|||
|
Next Adduser to local group
|