Book Image

PowerShell Core for Linux Administrators Cookbook

By : Prashanth Jayaram, Ram Iyer
Book Image

PowerShell Core for Linux Administrators Cookbook

By: Prashanth Jayaram, Ram Iyer

Overview of this book

PowerShell Core, the open source, cross-platform that is based on the open source, cross-platform .NET Core, is not a shell that came out by accident; it was intentionally created to be versatile and easy to learn at the same time. PowerShell Core enables automation on systems ranging from the Raspberry Pi to the cloud. PowerShell Core for Linux Administrators Cookbook uses simple, real-world examples that teach you how to use PowerShell to effectively administer your environment. As you make your way through the book, you will cover interesting recipes on how PowerShell Core can be used to quickly automate complex, repetitive, and time-consuming tasks. In the concluding chapters, you will learn how to develop scripts to automate tasks that involve systems and enterprise management. By the end of this book, you will have learned about the automation capabilities of PowerShell Core, including remote management using OpenSSH, cross-platform enterprise management, working with Docker containers, and managing SQL databases.
Table of Contents (19 chapters)

Splitting and combining strings

Now that we have learned how to match and replace substrings, the next step for us in the journey of strings in PowerShell is to learn to split and combine them. This will leave us with understanding formatting operators so that we can learn to use strings effectively in PowerShell.

In this scenario, we have to create a log cleanup script that takes input in the form of a CSV file. This CSV file contains multiple rows of input, each being a location that needs regular cleanup, the number of days, worth of files to retain, the extension of the files to be cleaned up, and the paths to be excluded. The paths to be excluded must have multiple paths, separated by a semicolon. Here is a sample:

Path Retention Extension Exclusion
/home/coolapp/logs 7 .log /home/coolapp/logs/devicelogs;/home/coolapp/logs/install

Your task is to only split the...