Creating TAIL on Windows for Text Files

UPDATE: Article changed based on the comment from Mr. Sewell.

I wrote recently about making a HEAD utility to find the top few lines from a text file. I used Powershell and scripting to make this work from any Windows command line on my machine.

Someone asked about TAIL, which is easy, so I did this as well and set up a tail utility.

Get-Content in Powershell will do this, so I took my head.cmd and did a save as in VS Code.

2022-08-15 15_02_49-Save As

Then I changed the “first” in the code to “last”, as shown here.

UPDATE: Based on a comment from Mr. Sewell, I updated the code.

There is a tail parameter for Get-Content, so let’s use that.

powershell "get-content %1 -tail 10 | select-object"

This gets me the end of a file. As an example this is below. Here’s a text file I have with various values. As you can see below, the bottom values are zeros.

2022-08-15 15_19_39-D__Downloads_Chart Export 08_15_2022 21_19.csv - Sublime Text (LICENSE UPGRADE R

Here’s my tail utility working:

2022-08-15 15_23_49-D__Downloads

UPDATE: I left the original piece below in italics, but with the tail parameter, this takes a few seconds.

If I run this on a larger, 1.5GB file, it takes a few seconds.

tail parameter change and quick execution

In case you’re wondering how this works on larger files, it can be slow. This took 3 minutes on my machine to get the last ten lines of a 1.5GB file.

2022-08-15 15_28_58-D__Downloads_imdb

About way0utwest

Editor, SQLServerCentral
This entry was posted in Blog and tagged , . Bookmark the permalink.

2 Responses to Creating TAIL on Windows for Text Files

  1. Rob Sewell says:

    Hey Steve,

    Get-Content $file -Tail 10 will be much quicker

    and

    Get-Content $file -TotalCount 10 will be much quicker for the first 10 lines

    Both are in the region of 5 milliseconds for a 1.5 Gb file

    Rob

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.