우리는 최근에 Windows PowerShell 3.0 First Steps(Windows PowerShell 3.0 First Steps) 사본을 받았고 저는 주로 두 가지 이유로 이를 검토하기로 결정했습니다. 첫 번째는 내가 전에 책을 리뷰한 적이 없고 이 방향에서 훌륭한 연습으로 보았다는 것입니다. 두 번째 이유는 이 책이 PowerShell 초심자(PowerShell beginner) 를 염두에 두고 작성되었으며 - 짐작하시겠지만 - 나는 PowerShell 초심자(PowerShell beginner) 라는 사실 입니다. 사실 저는 PowerShell(PowerShell) 을 사용한 적이 없기 때문에 과장된 표현일 것입니다 . 그래서 저는 PowerShell을 새로운 기술을 배울 수 있는 좋은 방법이라고 생각했습니다. 더 이상 고민하지 않고 이 책을 살 가치가 있는지 살펴보겠습니다.
누가 나에게 PowerShell을 가르칠 것인가?
Windows PowerShell 3.0 First Steps 의 저자 는 Ed Wilson 입니다. 그의 책 표지에서 알 수 있듯이 Ed는 Microsoft 의 수석 컨설턴트 이자 유명한 스크립팅 전문가(scripting expert) 입니다. 그의 기술을 감안할 때 그는 전 세계의 Microsoft 고객과 직원에게 스크립팅 워크샵을 발표할 때 Microsoft에서 가장 많이 찾는 사람 중 한 명인 것 같습니다.(Microsoft)
Ed는 또한 Windows PowerShell 2.0 모범 사례(Windows PowerShell 2.0 Best Practices) , Microsoft VBScript 단계별(Microsoft VBScript Step by Step) 작성 및 스크립팅에 대해 이야기하는 TechNet 블로그 를 운영하고 있습니다. (TechNet blog)지금까지 그의 작업에 대해 자세히 알아보지는 않았지만 이러한 사실을 감안할 때 그 사람은 자신이 말하는 내용을 알고 있다고 말할 수 있으므로 언뜻 보기에는 PowerShell 학습에 대한 그의 조언을 기꺼이 받아들일 것 입니다.
사물을 관점으로 보기
에드 윌슨(Ed Wilson) (Ed Wilson )은 완전한 초보자를 위해 이 책을 썼으며 처음부터 끝까지 읽으라고 조언합니다. 이 책이 쓰인 어조는 친근한 어조로 매우 이해하기 쉽습니다. 저자는 PowerShell(PowerShell) 을 가르치는 동안 고도로 기술적인 전문 용어를 사용하지 않습니다 . 따라서 방금 컴퓨터를 구입하고 사용법을 배우는 것이 아니라면 Ed가 포함된 강의와 예제를 이해하는 데 문제가 없을 것입니다.
거의 300페이지에 달하는 이 책이 어떻게 구성되어 있는지 더 잘 이해하기 위해 다음은 챕터 목록과 각 챕터에서 예상되는 내용입니다.
-
1장 - Windows PowerShell 3.0 개요 - 이 첫 번째 장은 (Chapter 1 - Overview of Windows PowerShell 3.0)PowerShell 이 무엇인지에 대한 매우 훌륭하고 이해하기 쉬운 개요를 제공하고 나중에 사용할 Windows PowerShell 콘솔(Windows PowerShell console) 과 Windows PowerShell 통합 스크립팅 환경(Windows PowerShell Integrated Scripting Environment) 간의 몇 가지 차이점도 보여줍니다. 책에서. 또한 Powershell 에서 사용되는 (Powershell)동사(verbs) 및 명명 규칙과 PowerShell 사용에 직접적인 영향을 미치는 몇 가지 기본 보안 측면에 대해서도 알아봅니다 .
-
2장 - Windows PowerShell cmdlet 사용 - 이 장에서 (Chapter 2 - Using Windows PowerShell cmdlets)PowerShell 의 (PowerShell)ABC 를 고려하십시오 . cmdlet(Cmdlets) 은 PowerShell 의 핵심이며 실제로 사용 방법을 배우고 싶다면 먼저 cmdlet을 마스터해야 합니다. 다행스럽게도 Ed는 역할과 구조를 모두 잘 설명하고 자신의 컴퓨터에서 실행하고 효과를 확인하기 위해 직접 테스트할 수 있는 많은 예제를 신속하게 제공합니다. 여기에 제공된 몇 가지 예에는 PowerShell 의 도움말 항목을 검색하거나 (Help)Get-Command cmdlet을 사용하여 다른 cmdlet을 찾는 것이 포함됩니다. 이 장은 스크립트 실행 (Script Execution)정책(Policy) 설정에 대한 섹션으로 끝납니다. (걱정하지 마세요. 이것이 무엇인지도 알게 될 것입니다) 기본 Windows PowerShell 프로필(Windows PowerShell profile) 만들기 .
-
3장 - 필터링, 그룹화 및 정렬(Chapter 3 - Filtering, grouping, and sorting) - PowerShell은 다양한 유형의 데이터에 대한 철저한 통찰력을 제공하는 데 탁월합니다. 이 장에서는 파이프라인을 소개하는 것으로 시작하여 다양한 cmdlet을 사용하여 얻은 정보를 정렬, 그룹화 또는 필터링하는 방법을 알려줍니다.
-
4장 - 출력 형식 지정 - (Chapter 4 - Formatting output)PowerShell 콘솔(PowerShell console) 에 원시 데이터를 표시하는 것이 항상 가장 좋은 방법은 아닙니다. 이 책의 네 번째 장은 PowerShell 에서 테이블을 만들고 이를 사용하여 필요한 데이터를 체계적으로 표시하는 방법에 대한 실습 데모를 제공합니다. 또한 많은 사용자가 좋아할 기능인 출력 그리드 를 사용하는 방법도 보여줍니다.(output grid)
-
5장 - 출력 저장 - (Chapter 5 - Storing output)PowerShell 에서 정보를 가져오는 데 익숙해지면 Ed는 해당 정보를 다른 도구에 저장하는 방법을 보여줍니다. 그는 csv , txt 및 xml 파일에 정보를 저장하여 이를 보여줍니다.
-
6장 - Windows PowerShell 공급자 활용(Chapter 6 - Leveraging Windows PowerShell providers) - 이 책에서 보다 기술적인 내용을 다루기 시작합니다. 하지만 이봐, 그게 당신이 여기 온 이유가 맞죠? 결국 우리는 Microsoft(Microsoft) 운영 체제 에서 찾을 수 있는 가장 강력한 도구 중 하나에 대해 이야기하고 있습니다! 이 장에서는 Windows PowerShell 공급자가 무엇인지 설명하고 (Windows PowerShell)별칭 공급자(Alias provider) , 인증서 공급자(Certificate provider) , 환경 공급자(Environment provider) , 파일 시스템 공급자(File System provider) , 함수 공급자(Function provider) , 레지스트리 공급자(Registry provider) 및 변수 를 주의 깊게 검토합니다.
공급자. 이제 진정하고 심호흡을 하세요. 책에 나와 있는 예제를 주의 깊게 읽고 연습하면서 여기까지 오면 기술적인 용어로 헤매지 않을 만큼 PowerShell 에 대해 충분히 이해하게 될 것입니다.(PowerShell)
-
7장 - Windows PowerShell 원격 사용(Chapter 7 - Using Windows PowerShell remoting) - 제 생각에 이것은 이 책에서 가장 중요한 장 중 하나입니다. 시간을 내어 읽어보고 필요하다고 생각되면 두 번째 또는 세 번째로 읽으십시오. 바로 여기에서 PowerShell 의 진정한 강점이 나타나기 때문 입니다. 이 섹션의 내용 이 PowerShell 에 (PowerShell)power 라는 단어를 넣는 것이라고 말할 수 있습니다. 여기에서 원격 컴퓨터에서 명령을 실행하고 영구 연결을 생성하고 문제 해결을 수행하는 방법을 배우게 됩니다.
-
8장 - WMI 사용(Chapter 8 - Using WMI) - 이 장에서는 Microsoft 가 (Microsoft)Windows NT 4.0 이후 모든 운영 체제 에 포함시킨 (operating system)Windows Management Instrumentation 에 대해 자세히 설명 합니다. 네, 그게 중요(that) 합니다. WMI 클래스, 공급자 및 네임스페이스 에 대해 배우고 두 가지 다른 방법으로 WMI 쿼리를 통해 지식을 테스트합니다 . SQL 에 익숙하다면 적어도 두 가지 방법 중 하나를 사용하는 것이 편할 것입니다.
-
9장 - CIM 사용 - CIM (Chapter 9 - Using CIM)((CIM) 공통 정보 모델 )에서는 (Information Model)Windows Management Instrumentation 에서 정보를 검색하는 흥미로운 방법을 제공합니다 . Ed Wilson 은 로컬 및 원격에서 이 기능을 사용하는 방법과 이유를 잘 설명합니다.
-
10장 - Windows PowerShell ISE 사용(Chapter 10 - Using the Windows PowerShell ISE) - Windows PowerShell ISE 는 지금까지 책에서 논의한 거의 모든 것에 대해 PowerShell 을 사용하는 보다 대화형 방법입니다 . 환경, 탭 확장 기능(tab expansion feature) 및 출력 창(Output pane) 을 사용하는 방법을 배웁니다 . 이 책은 또한 ISE 스니펫을 생성하고 제거하는 방법을 다룹니다(예, 이것이 무엇인지도 배우게 됩니다).
-
11장 - Windows PowerShell 스크립트 사용(Chapter 11 - Using Windows PowerShell scripts) - PowerShell 은 (PowerShell)네트워크 관리 및 관리(network management and administration) 를 위한 다양한 옵션을 제공합니다 . IT 관리자(IT administrator) 인 경우 일상적인 작업에서 반복적인 요구 사항에 직면할 가능성이 높으며, 이는 자체 스크립트를 작성하고 PowerShell 에서 실행하면 단순화할 수 있습니다 . VBScript 또는 기타 스크립팅 또는 프로그래밍 언어(scripting or programming language) 에 어느 정도 익숙하지만이 장을 이해하는 데 도움이 되지만 필수 항목이라고 하지는 않습니다. Ed는 초보자를 위해 이 책을 썼고 아직 한 줄의 코드도 작성하지 않았더라도 이 장에서 예시한 스크립트를 이해하는 것은 어렵지 않습니다. 이 장에서는 스크립트를 작성하는 몇 가지 이유를 제시하고 스크립트를 실행하는 방법, 스크립트 실행 정책(execution policy and teaches) 을 설정하는 방법, 변수 및 다양한 언어 설명에 대해 설명합니다.
-
12장 - 함수 작업 - (Chapter 12 - Working with functions)PowerShell 스크립트 를 작성할 때 함수는 기본 프로그래밍 요소 입니다. (programming element)이 장은 함수와 그 사용법에 대한 소개로 시작하여 입력에 매개변수를 사용하는 방법을 설명합니다. 또한 기능 사용을 위한 두 가지 특수 시나리오가 포함되어 있습니다.
-
13장 - 디버깅 스크립트(Chapter 13 - Debugging scripts) - "최고의 디버깅은 디버깅하지 않는 것입니다."와 같은 말이 있습니다. 물론 현실에서 그런 일은 거의 일어나지 않습니다. 이 장에서는 스크립트 디버깅 과 그 중요성, (script debugging)PowerShell 스크립트 에서 중단점 설정, 나열, 활성화 및 비활성화를 안내합니다.
-
14장 - 오류 처리(Chapter 14 - Handling errors) - Ed Wilson 은 (Wilson)오류 처리(error handling) 전용 장으로 PowerShell 수업을 우아하게 마무리합니다 . 이 장은 누락된 매개변수에 대한 좋은 접근 방식으로 시작하여 선택 제한에 대해 가르치고 누락된 권한을 처리하는 방법을 검토합니다. 또한 구조화된 오류 처리(error handling) 에 대해서도 배웁니다 .
이 책에는 두 개의 부록 섹션이 포함되어 있습니다. 하나는 PowerShell FAQ 를 포함 하고 다른 하나는 PowerShell 3.0 코딩 규칙을 친숙하고 이해하기 쉬운 방식으로 설명하므로 (PowerShell 3.0)스크립트 가독성 및 유지 관리(script readability and maintenance) 측면에서 몇 가지 모범 사례도 배울 수 있습니다 .
그것이 작동하는 방식입니다... 하지만 여기에 이유가 있습니다.
Ed의 교육 스타일(teaching style) 의 가장 큰 장점 은 특정 방식으로 일을 해야 하는 이유를 설명하는 그의 접근 방식과 원숭이 보기, 원숭이(monkey see, monkey do) 접근 방식을 사용하지 않는다는 것입니다. 각 장은 간단한 설명과 당면한 문제에 대한 개요로 시작합니다. 그런 다음 이 작업을 수행해야 하는 이유와 그 작업을 수행해야 하는 이유에 대한 통찰력을 제공하면서 보다 구체적인 작업으로 진행합니다. 초심자 중심의 책이기 때문에 이 접근 방식을(approach and hope) 칭찬할 수 밖에 없고 가능한 한 많은 책, 특히 기술 책에서 볼 수 있기를 바랍니다. 각 장은 포함된 정보의 요약으로 끝나며, 정보 를 더 잘 이해하고 염두에 둘 수 있도록
마무리 및 기억을 되살리는 역할을 합니다.(memory refresher)
도움이 되었나요?
짧은 대답: 예!
저자는 상당히 복잡한 주제와 지금까지 Windows(Windows) 에 포함된 가장 복잡한 도구 중 하나를 사용하여 이해하기 쉽고 흥미를 유지할 수 있는 방식으로 설명합니다. 나는 전에 PowerShell(PowerShell) 을 사용한 적이 없지만 이 책을 읽은 후에 PowerShell 이 무엇인지, 어떻게 작동하는지, 누가 사용하면 가장 큰 이점을 얻을 수 있는지 에 대한 기본적인 이해가 있다고 안전하게 말할 수 있습니다. 나는 스크립팅에 대해 너무 많이 다루지는 않았지만 이것은 분명히 우리가 곧 여기 7 Tutorials 에서 다룰 주제가 될 것이며 Ed Wilson 의 책은 그렇게 하는 동안 우리의 성경 이 될 것입니다.(Bible)
판결
Ed Wilson 의 스타일 에 익숙한 사용자 는 Windows PowerShell 3.0 First Steps 를 가장 확실히 즐길 수 있지만 완전한 초보자도 마찬가지입니다. 개념과 예는 매우 잘 설명되어 있으며 각 장에서 학습에 유용할 수 있는 실용적인 DIY 경험을 얻을 수 있습니다. 이 책은 초보자에게 PowerShell(PowerShell) 사용에 대한 훌륭한 출발점을 제공하지만 보다 유용한 스크립터나 IT 관리자, 특히 스크립팅 장 및 코딩 규칙 부록에서도 유용할 수 있습니다. 이 책은 기본적으로 스크립트를 작성 하고 네트워크 작업을 자동화하거나 관리(automate or manage network tasks) 하는 방법을 배우기 위해 컴퓨터 전문가(computer expert) 가 될 필요가 없다는 것을 보여주는 책이라는 점을 감안할 때, PowerShell 을 처음 사용하는 사람에게 강력히 추천합니다 .
Book Review - Windows PowerShell 3.0 First Steps, by Ed Wilson
We recently reсeived a copy of Windows PowerShell 3.0 First Steps and I decided to take on the challenge of reviewing it, mainly for two reasons. The first one is that I have never reviewed a book before and I saw it as a great exercise in this direction. The second reason is the fact that this book is written with PowerShell beginners in mind and - you guessed it - I'm a PowerShell beginner. Actually, that would be an overstatement, since I have never used PowerShell before, so I considered it a great way to get to learn a new skill. Without further ado, let's dive in and see if this book is worth buying.
Who's Going To Teach Me PowerShell?
The author of Windows PowerShell 3.0 First Steps is Ed Wilson. As the cover of his book informs us, Ed is a senior consultant at Microsoft and a well-known scripting expert. Given his skills, he seems to be one of Microsoft's go-to guys when it comes to presenting scripting workshops to Microsoft customers and employees around the globe.
Ed is also the author of Windows PowerShell 2.0 Best Practices, Microsoft VBScript Step by Step, and has his own TechNet blog on which he talks about scripting. I didn't really dig into his work until now, but given these facts I'd say the guy knows what he's talking about so, at the first glance, I would happily take his advice on learning PowerShell.
Putting Things Into Perspective
Ed Wilson wrote this book for complete beginners and advises you to read it from cover to cover. The tone in which this book is written is a friendly one, very easy to understand. The author doesn't use a highly technical jargon while teaching you PowerShell, so unless you have just bought a computer and are just learning to use it, you should not have any problem understanding the lessons and the examples that Ed included.
To get a better overview of how this almost 300 pages book is structured, here's a list of the chapters and what to expect in each one:
-
Chapter 1 - Overview of Windows PowerShell 3.0 - This first chapter gives you a very good and comprehensible overview of what PowerShell is and also shows some of the differences between the Windows PowerShell console and the Windows PowerShell Integrated Scripting Environment, which you will be using later on in the book. You also learn about the verbs and naming conventions used in Powershell as well as a few basic security aspects that directly impact the usage of PowerShell.
-
Chapter 2 - Using Windows PowerShell cmdlets - Consider this chapter the ABC of PowerShell. Cmdlets are the heart of PowerShell and if you really want to learn to use it, you'll need to master cmdlets first. Fortunately, Ed does a great job at explaining both their role and their structure, and quickly gives you lots of examples that you can run on your own computer and test them yourself to see the effect. Some of the examples given here include searching the Help topics of PowerShell or using the Get-Command cmdlet to find other cmdlets. The chapter ends with sections on setting up a Script Execution Policy (don't worry, you'll learn what that is as well) and creating a basic Windows PowerShell profile.
-
Chapter 3 - Filtering, grouping, and sorting - PowerShell is great at giving you thorough insight into different types of data. This chapter starts by taking you through an introduction to the pipeline and goes on by teaching you how to sort, group or filter the information you get from using different cmdlets.
-
Chapter 4 - Formatting output - Displaying raw data in the PowerShell console might not always be the best way to view it. The fourth chapter of the book gives you a hands-on demonstration of how to create a table in PowerShell and use it to display the data you need in an organized fashion. It also shows you how to use the output grid, a feature that I bet many of you will love.
-
Chapter 5 - Storing output - Once you get the hang of pulling information from PowerShell, Ed shows how to store that information in different tools. He demonstrates this by storing information in csv, txt and xml files.
-
Chapter 6 - Leveraging Windows PowerShell providers - This is where the book starts to get more technical. But hey, that's what you here for, right? After all, we are talking about one of the most powerful tools you will find in Microsoft's operating systems! This chapter explains what Windows PowerShell providers are and carefully examines the Alias provider, Certificate provider, Environment provider, File System provider, Function provider, Registry provider, and Variable
provider. Now calm down and take a deep breath. By the time you get here while carefully reading and practicing the examples shown in the book, you'll have a decent enough understanding of PowerShell to not get lost in technical terms.
-
Chapter 7 - Using Windows PowerShell remoting - In my opinion this is one of the most important chapters of the book. Take your time while reading it and give it a second or third read if you feel that you need to, because this is where the real strength of PowerShell is shown. I would go as far as to say that the contents of this section is what puts the word power in PowerShell. Here you'll learn how to run commands on a remote computer, create persistent connections and also do some troubleshooting.
-
Chapter 8 - Using WMI - This chapter goes into detail regarding Windows Management Instrumentation, which Microsoft has included in every operating system since Windows NT 4.0. Yes, it's that important. You will learn about WMI classes, providers and namespaces and will test your knowledge through querying WMI in two different ways. If you're familiar with SQL you'll feel right at home with at least one of the two methods.
-
Chapter 9 - Using CIM - Common Information Model (CIM) provides an interesting way to retrieve information from Windows Management Instrumentation. Ed Wilson does a good job explaining how and why to use this feature, both locally and remotely.
-
Chapter 10 - Using the Windows PowerShell ISE - The Windows PowerShell ISE is a more interactive way of using PowerShell for pretty much everything that the books has discussed so far. You will learn how to use the environment, the tab expansion feature and the Output pane. The book also covers how to create and remove ISE snippets (yes, you will learn what these are as well).
-
Chapter 11 - Using Windows PowerShell scripts - PowerShell offers a great deal of options for network management and administration. If you're an IT administrator, you will most likely encounter recurring needs in your daily tasks, that can be simplifies by writing your own scripts and running them from PowerShell. While some familiarity with VBScript or any other scripting or programming language would be of use in understanding this chapter, I wouldn't call it mandatory. Ed wrote this book for beginners and it's not hard to understand the scripts exemplified in this chapter even if you haven't written a line of code yet. The chapter presents some reasons to write scripts, shows you how to run them, how to set the script execution policy and teaches you about variables and different language statements.
-
Chapter 12 - Working with functions - Functions are the primary programming element when it comes to writing PowerShell scripts. The chapter begins with an introduction to functions and their usage and goes on explaining how to use parameters for input. It also includes two special scenarios for using functions.
-
Chapter 13 - Debugging scripts - There's a saying that goes something like "The best debugging is no debugging.". Of course, that rarely happens in real life. This chapter will take you through script debugging and its importance, setting, listing, enabling and disabling breakpoints in PowerShell scripts.
-
Chapter 14 - Handling errors - Ed Wilson gracefully concludes the PowerShell lessons with a chapter dedicated to error handling. The chapter begins with a good approach on missing parameters and goes on teaching you about limiting choices and reviewing how to handle missing rights. You also learn structured error handling.
The book includes two appendix sections, one containing a PowerShell FAQ and the other one explaining PowerShell 3.0 coding conventions in a friendly and understandable manner, so that you also learn some best practices in terms of script readability and maintenance.
That's How That Works... But Here's Why
A great thing about Ed's teaching style is his approach to explaining the reason why you need to do things a certain way and not using a monkey see, monkey do approach. Each chapter starts with simple explanations and an overview of the matter at hand. Then it advances to more specific tasks while also giving you an insight of why you need to do this and that. Being a beginner oriented book, I can only praise this approach and hope to see it in as many books as possible, especially technical ones.
Each chapter ends with a summary of the information it contains, serving as a wrap-up and a memory refresher for you to better understand and keep the information in mind.
Did It Help Me?
The short answer: Yes!
The author takes a fairly complex subject and one of the most complex tools that have ever been included in Windows and explains it in a way that's both easy to understand and interesting enough to keep you hooked. I have never used PowerShell before but, after reading the book, I can safely say that I have a basic understanding of what PowerShell is, how it works and who would best benefit from its usage. I didn't get into too much scripting, but this will definitely be a topic we will soon cover here, at 7 Tutorials, and Ed Wilson's book will be our Bible while doing that.
The Verdict
While those of you familiar with Ed Wilson's style will most definitely enjoy Windows PowerShell 3.0 First Steps, I could say the same for complete beginners. The concepts and examples are very well explained and you get some practical, do-it-yourself experience in each chapter, which can only be great for learning. While the book offers newcomers a great starting point in using PowerShell, more useful scripters or IT administrators might find it useful as well, especially the scripting chapters and the coding conventions appendix. Given that this is a book that basically shows you that you don't need to be a computer expert to be able to learn how to write scripts and automate or manage network tasks, I would highly recommend it for a newcomer to PowerShell.