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)

Writing a simple function

Scripts are a great way to automate tasks. However, a fundamental limitation with a script is that only one kind of task can be handled by a simple script. For instance, if you wanted to achieve two goals, that is, count down from 21 and copy two files from one location to another, you would need to write two different scripts to perform the tasks. Wouldn't it be great if you could write a single script for the two tasks and run either of them by choice? This way, you have a smaller number of scripts to manage.

Secondly, writing a script to perform a very complex task would involve several sub-tasks. If a single script is written for all the sub-tasks, the script would become monolithic. This has its own drawbacks, the first one being the challenges in reusing the code.

Functions help with this. With functions, you can separate the sub-tasks, and...