You are on page 1of 1

5

essential task automation concepts and features in PowerShell. The nature of the
introduced methods varies, some are cmdlet-based features, while some com-
bine scripting features or conventions into techniques usable in developing auto-
mations. Chapter 4 consists of some practical use cases and automation imple-
mentations. The features introduced in chapter 3 are illustrated in these practical
examples by explaining and evaluating the applied features. Each example con-
tains a brief description explaining the use case and a complete implementation
developed for PowerShell. Chapter 5 concludes the thesis with the results.

2 PowerShell

2.1 Basics

Microsoft’s PowerShell is a command line tool designed especially for IT system


administrators and power users. PowerShell enables users to automate tasks
requiring the operating system’s functionality or installed applications. Pow-
erShell was originally tied to Windows operating system, but has since widened
its support to macOS, Linux and Unix based systems. (Microsoft 2017a.)

PowerShell improves upon traditional command line tools by offering a tool for
building consistent and powerful automations. Consistency ensures that learning
certain principles apply to the entire interface. Concepts such as naming conven-
tions and feature discoverability in the tool itself apply themselves to every
cmdlet. Just by developing a cmdlet, it is made discoverable and usable with a
consistent syntax. The transition into scripting from inputting singular commands
is designed to be as intuitive as possible. (Microsoft 2017a.)

PowerShell is built on top of Microsoft’s .NET Framework (Windows PowerShell


versions 1 – 5) or .NET Core (PowerShell Core, version 6). All output returned by
PowerShell commands consists of .NET Framework objects. A major part of Pow-
erShell’s capability comes from .NET Framework’s object-oriented approach, it is

You might also like