MoonPoint Support Logo

 

Shop Amazon Warehouse Deals - Deep Discounts on Open-box and Used ProductsAmazon Warehouse Deals



Advanced Search
March
Sun Mon Tue Wed Thu Fri Sat
         
22
           
2024
Months
Mar
May Jun
Jul Aug Sep
Oct Nov Dec


Fri, Mar 22, 2024 9:44 pm

PowerShell Get-Content equivalents to Linux head and tail commands

The Windows PowerShell Get-Content cmdlet can provide the equivalent to the Unix/Linux head and tail commands. E.g., suppose a file named somefile.txt contains the following ten lines:
line 1
line 2
line 3
line 4
line 5
line 6
line 7
line 8
line 9
line 10

The following Get-Content commands could be used to obtain the first 5 and the last 5 lines in the file.

PS C:\Users\Arnold\Documents> Get-Content somefile.txt -Head 5
line 1
line 2
line 3
line 4
line 5
PS C:\Users\Arnold\Documents> Get-Content somefile.txt -Tail 5
line 6
line 7
line 8
line 9
line 10
PS C:\Users\Arnold\Documents> Get-Content somefile.txt -TotalCount 5
line 1
line 2
line 3
line 4
line 5
C:\Users\Arnold\Documents>

The TotalCount parameter can function like the Head parameter and will return the first x number of lines specified with x being 5 in the example above. You can also use it to obtain a specific line, though. E.g., if you wished to see the 7th line in the file, you could use the command below.

PS C:\Users\Arnold\Documents> (Get-Content Somefile.txt -TotalCount 7)[-1]
line 7
PS C:\Users\Arnold\Documents>

By default the delimiter for lines is the newline, aka end-of-line character, \n, but you can change that with the -Delimiter parameter.

References:

  1. Get-Content
    Microsoft Learn

[/os/windows/PowerShell] permanent link

Valid HTML 4.01 Transitional

Privacy Policy   Contact

Blosxom logo