commands detail - h
head
The PowerShell equivalent of the *nix head is:
1 gc file.txt | select-object -first 10
history
The Powershell equivalent of history is:
1 get-history
There is a built in alias history
It’s worth noting that history doesn’t persist across PowerShell sessions, although if you search online there are a couple of published techniques for making it persistent.
It’s also perhaps worth noting that Powershell gives you a couple of extra bits of information, if you want them:
1 get-history | gm -MemberType Property
2
3
4 TypeName: Microsoft.PowerShell.Commands.HistoryInfo
5
6 Name MemberType Definition \
7
8 ---- ---------- ---------- \
9
10 CommandLine Property string CommandLine {get;} \
11
12 EndExecutionTime Property datetime EndExecutionTime {get;} \
13
14 ExecutionStatus Property System.Management.Automation.Runspaces.PipelineState E\
15 xecutionStatus {get;}
16 Id Property long Id {get;} \
17
18 StartExecutionTime Property datetime StartExecutionTime {get;}
history | egrep -i ls
There is no direct equivalent of the shell functionality you get with set -o vi sadly. You can up- and down- arrow by default, but if you want to search through your history then you need to do something like this
1 history | select commandline | where-object {$_.commandline -like '*ls*'}
hostname
There is a windows hostname which does much the same thing as the Unix
hostname, but it’s not Powershell. It’s a standard-ish Windows executable that on my machine lives in c:\windows\system32
Details are here: https://docs.microsoft.com/en-us/windows-server/administration/windows-commands/hostname
You can get the server name through PowerShell like this:
1 get-wmiobject -class win32_operatingsystem | select __SERVER