Book Image

SQL Server 2014 with Powershell v5 Cookbook

By : Donabel Santos
Book Image

SQL Server 2014 with Powershell v5 Cookbook

By: Donabel Santos

Overview of this book

PowerShell can be leveraged when automating and streamlining SQL Server tasks. PowerShell comes with a rich set of cmdlets, and integrates tightly with the .NET framework. Its scripting capabilities are robust and flexible, allowing you to simplify automation and integration across different Microsoft applications and components. The book starts with an introduction to the new features in SQL Server 2014 and PowerShell v5 and the installation of SQL Server. You will learn about basic SQL Server administration tasks and then get to know about some security-related topics such as the authentication mode and assigning permissions. Moving on, you will explore different methods to back up and restore your databases and perform advanced administration tasks such as working with Policies, Filetables, and SQL audits. The next part of the book covers more advanced HADR tasks such as log shipping and data mirroring, and then shows you how to develop your server to work with BLOB, XML, and JSON. Following on from that, you will learn about SQL Server's BI stack, which includes SSRS reports, the SSIS package, and the SSAS cmdlet and database. Snippets not specific to SQL Server will help you perform tasks quickly on SQL servers. Towards the end of the book, you will find some useful information, which includes a PowerShell tutorial for novice users, some commonly-used PowerShell and SQL Server syntax, and a few online resources. Finally, you will create your own SQL Server Sandbox VMs. All these concepts will help you to efficiently manage your administration tasks.
Table of Contents (15 chapters)
14
Index

Manipulating files

In this recipe, we will take a look at different cmdlets that help you manipulate files.

How to do it...

Let's explore different ways to manage files:

  1. Open PowerShell ISE as an administrator.
  2. Add the following script and run it:
    #create file
    $timestamp = Get-Date -format "yyyy-MMM-dd-hhmmtt"
    $path = "C:\Temp\"
    $fileName = "$timestamp.txt"
    $fullPath = Join-Path $path $fileName
    
    New-Item -Path $path -Name $fileName -ItemType "File"
    
    #check if file exists 
    Test-Path $fullPath
    
    #copy file
    $path = "C:\Temp\"
    $newFileName = $timestamp + "_2.txt"
    $fullPath2 = Join-Path $path $newFileName
    
    Copy-Item $fullPath $fullPath2 
    
    #move file
    $newFolder = "C:\Data"
    Move-Item $fullPath2 $newFolder
    
    #append to file
    Add-Content $fullPath "Additional Item"
    
    #show contents of file
    notepad $fullPath
    
    #merge file contents
    $newContent = Get-Content "C:\Temp\processes.txt"
    Add-Content $fullPath $newContent...