If you are a Linux administrator, you may be familiar with tail, head, and grep commands when reading text files, and they are convenient when looking at log files. (If you are not familiar, we are going to summarize it here.) In a Linux shell, if we want to check the first three lines of a log file, we would execute head -n 3, and to read the last two lines of any given file, we would run tail -n 2.
If we want to check the entire contents of a file, we can use cat file.txt. On the other hand, if we’re going to search a specific string within a particular file, we can use cat file.txt | grep “string.”
The entire process of reading text files in a Linux bash shell is depicted in the image below.
How about reading text files with PowerShell? That is a piece of cake and more intuitive (since it is a single cmdlet, which helps to save the precious memory slots of my brain already stuffed with all those command names!).
First, to get the entire content of any given file, you can use the Get-Content cmdlet.
If you want the first lines (head) or the end of the file (tail), we can execute these cmdlets:
Get-Content <file.txt> -Head 2 Get-Content <file.txt> -Tail 3
If we want to do something similar to the grep command. We will use the Select-String cmdlet.
Get-Content <file.txt> | Select-String “String”
The entire process that we have just described is depicted in the image below.
This article has been updated with new information.
More Linux articles
- Linux security and growing cyberthreats: Everything you need to know
- Data transfer between Linux and Windows: Step-by-step guide
- Setting up static IP address for Linux: Easier than you think
- Merging and sorting files in Linux: Easier than you think
- Sending email from Linux terminal: Efficient and powerful solution
More PowerShell Basics articles
- PowerShell Gallery: A great free resource for finding scripts
- Using JSON with PowerShell: A guide for IT professionals
- How malicious PowerShell scripts evade detection
- Building PowerShell hash tables
- Reading a Windows INI file into PowerShell
More Quick Tips articles
- Using Azure ephemeral disks when provisioning VMs with ARM
- Checking services availability in Azure and Azure Stack Hub
- Integrating Microsoft Defender with Cloud App Security
- New from Microsoft: Azure Security Center onboarding guide
- Fixing Azure Key Vault when moving to a different tenant