Windows 7 and Vista Guide to Scripting, Automation, and Command Line Tools

Windows 7 and Vista Guide to Scripting, Automation, and Command Line Tools

3.37 (8 ratings by Goodreads)
By (author) 

Free delivery worldwide

Available. Dispatched from the UK in 2 business days
When will my order arrive?


THE ONLY HANDS-ON, UP-TO-DATE GUIDE TO VBSCRIPT, THE WINDOWS COMMAND LINE, AND WINDOWS POWERSHELL Windows 7 and Vista contain state-of-the-art tools for streamlining or automating virtually any system management task. If you're a power user, administrator, or developer, these tools can help you eliminate repetitive work and manage your systems far more reliably and effectively. Renowned Windows expert Brian Knittel brings together the practical knowledge you need to use all these tools, including VBScript and Windows Scripting Host (WSH), traditional batch files, the advanced PowerShell command console, and more. Using plenty of examples, Knittel explains how each tool works, and how to solve real-world problems with them. You'll master techniques ranging from accessing files to manipulating the Registry, sending automated emails to configuring new users. Knittel also provides concise, handy references to Windows 7/Vista's command line, GUI scripting, and object-based management tools. The only single-source guide to all leading methods of Windows scripting and automation, this book will help you get far more done-in far less time! * Understand Windows Scripting Host (WSH) and the modern Windows scripting environment* Script objects with VBScript, JScript, ActivePerl, and ActivePython* Read and write files, including XML and HTML files* Manipulate programs and shortcuts* Manage network, printer, and fax connections* Make the most of PowerShell under Windows 7 and Vista* Monitor and administer Windows systems with Windows Management Interface (WMI)* Use ADSI to control Active Directory and Microsoft Exchange, and manage users more efficiently* Avoid mistakes that can compromise script security * Use Windows' debugging tools to test and troubleshoot scripts* Develop batch files that take full advantage of the command line* Send faxes and email messages from scripts with Windows Fax and Collaboration Data Objects (CDO)* Deploy your scripts throughout your organization Brian Knittel has been a software developer for more than 30 years. He has coauthored five titles in Que's Special Edition Using series, covering Microsoft Windows Vista, XP, and 2000. He is also author of Windows XP Under the Hood, and coauthor of Upgrading and Repairing Windows (with Scott Mueller).show more

Product details

  • Paperback | 844 pages
  • 177.8 x 233.68 x 48.26mm | 1,247.37g
  • Pearson Education (US)
  • Que Corporation,U.S.
  • Indianapolis, IN, United States
  • English
  • 0789737280
  • 9780789737281
  • 482,445

Back cover copy

The addition of the mouse and the Graphical User Interface made the computer accessible to many more people than would have been possible otherwise. Still, "pointing and clicking" can be tedious when performing routine or repetitive tasks. Just as people learn to use menu shortcuts (the Alt key) to save time, savvy users and administrators learn to write batch files and scripts to avoid having to type the same commands over and over. Scripts save time, increase accuracy, and serve as documentation to boot. Windows 7 and Windows Vista come with scripting, batch file, and command line tools that can make a power user or administrator's life easier - if she or he knows what they are and how to use them. However, a general lack of information and awareness prevent their widespread use. Most current Windows users have no idea how powerful and effective these tools can be. The new scripting languages are a mystery to most Windows users. And, in Windows 7, most command line tools aren't even discussed in the Windows Help system. Microsoft has released a completely new scripting and command line environment called the Windows PowerShell, but few users are aware of its existence, let alone its power and more

About Brian Knittel

Brian Knittel has been a software developer for more than 30 years. After doing graduate work in electrical engineering applied to nuclear medicine and magnetic resonance imaging technologies, he began a career as an independent consultant.An eclectic mix of clients has led to long-term projects in medical documentation; workflow management; real-time industrial system control; and, most importantly, over 25 years of real-world experience with MS-DOS,Windows, and computer networking in the business world. Brian has coauthored Que's Windows 7 In Depth; Upgrading and Repairing Microsoft Windows; and bestselling books in the Special Edition Using series covering Windows Vista,Windows XP Professional and Home Edition, and Windows 2000 Professional. Brian lives in Oakland, California. He spends his free time restoring antique computers (for example, and trying to perfect his wood-fired pizza more

Table of contents

Introduction 1 I Scripting with Windows Script Host 1 Windows Script Host 9 What Is a Windows Script? 9 The "Script" Part 9 The "Windows" Part 10 The "Host" Part 11 How Is This Different from Writing Batch Files? 13 Scripting Languages 13 VBScript 14 JScript 14 Perl 15 Python 15 Open Object REXX 15 Ruby 15 Choosing a Language 16 A Simple Script 16 Types of Script Files 19 JSE and VBE: Encoded Scripts 20 Windows Script Files (WSF) 21 Windows Script Components (WSC) 23 WSH Settings 23 Creating Your First Script File 24 Making and Securing a Script Folder 24 Creating a Script 26 Script Editing Tools 27 How Windows Runs Scripts 28 Wscript and Cscript 28 Ways to Run a Script 29 Passing Information to Scripts 31 Saving the Results from Scripts 32 Wscript and Cscript Command Options 33 Running Your Own Scripts 36 Adding Scripts to the Path 37 Running Scripts with a Shortcut Icon 38 Making a Script Shortcut 39 Running Scripts from Batch Files 39 Running Scripts Automatically 40 Security Concerns 40 Trust Policy and Script Signing 42 Debugging Scripts 42 Where to Get More Information 47 2 VBScript Tutorial 49 Introduction to VBScript 49 Variables 50 Constants 51 Named Constants 52 Operators and Expressions 53 Automatic Conversion 57 Flow Control 57 The If...Then Statement 58 The Select Case Statement 61 The Do While Loop 63 Terminating a Loop with Exit Do 65 Counting with the For...Next Statement 66 Processing Collections and Arrays with For...Each 67 VBScript Functions 68 Calling Functions and Subroutines 69 Documentation and Syntax 70 String-Manipulation Functions 71 Date and Time Functions 74 Interacting with the User 79 The MsgBox( ) Function 79 The InputBox( ) Function 82 Printing Simple Text Messages with Wscript.Echo 84 Advanced VBScript Topics 85 Error Handling 86 Procedures: Functions and Subroutines 87 Arrays 89 Variable Scope 91 Where to Go from Here 92 3 Scripting and Objects 93 Introduction to Objects 93 Classes and Instances 94 Containers and Collections 95 Object Naming 97 Using Objects with VBScript 98 Automation and Document Files 99 The Difference Between Properties and Methods 100 Nested Objects 101 Releasing Objects 102 Working with Collections 102 Using Objects with JScript 104 Case Sensitivity 104 Working with Collections 104 Using Objects with ActivePerl 106 Running Perl Scripts in WSH 106 The Perl Object Interface 107 Working with Collections 108 Using Objects with ActivePython 109 Working with Collections 110 Using the WScript Object 111 Retrieving Command-Line Arguments 113 Locating and Using Unusual Objects 115 4 File and Registry Access 123 Getting Real Work Done 123 Manipulating Files and Folders 124 Scripting.FileSystemObject 124 Working with File and Pathnames 130 The Scripting.Drive Object 135 The Scripting.Folder Object 139 The Scripting.File Object 144 Reading and Writing Files 149 The TextStream Object 150 Reading Text from Files 152 Writing Text to Files 154 Working with Stdin and Stdout 159 Reading Binary Files 163 Reading and Writing XML 167 Some XML Basics 168 Reading an XML File 176 Creating an XML or HTML File 179 Manipulating Programs and Shortcuts 181 The WScript.Shell Object 182 Running Programs 186 Creating and Modifying Shortcuts 193 Working with the Environment 196 Extracting Environment Information 198 Managing Environment Settings 199 Working with the Registry 201 Examining Registry Keys and Values 202 Saving Information in the Registry 203 5 Network and Printer Objects 207 Managing Network and Printer Connections 207 Retrieving Network User Information 212 Managing Drive Mappings 214 Listing Drive Mappings with EnumNetworkDrives 214 Adding Drive Mappings 218 Deleting Drive Mappings 219 Setting Up Mappings in a Script 220 Managing Network Printer Connections 221 Displaying Printer Information 222 Connecting to Network Printers 223 Redirecting DOS Session Printers 225 Deleting Printer Connections 226 Setting the Default Printer 228 Printing from Scripts 229 6 Messaging and Faxing Objects 231 Sending Email from Scripts with CDO 231 The CDO Object Model 232 The CDO.Message Object 235 Working with Fields 242 Fields for the CDO.Message Object 244 The CDO BodyParts Collection 246 The CDO BodyPart Object 247 The ADO Stream Object 250 The CDO.Configuration Object 250 Sending a Message with CDO 256 Constructing the Message 257 Adding Attachments 261 Including Images with an HTML Message 262 Specifying the Recipients and Subject 263 Specifying the Delivery Server 263 Sending the Message 265 Putting It All Together 265 Faxing from Scripts 271 Sending a Fax with a Script 274 Getting More Information About Faxing 277 7 Windows Management Instrumentation 279 Introduction to Windows Management Instrumentation 279 WMI Functions 280 Namespaces 281 Managing Windows Remotely 283 Making WMI Connections 287 WMI Object Hierarchy 288 Connecting with the WbemScripting.SWbemLocator Object 291 Connecting with a Moniker 292 Connecting to the Local Computer 294 Security and Authentication 294 Specifying Security Options 299 WMI Collections and Queries 301 SWbemServices 302 WQL Queries 303 SWbemObject 306 SWbemMethodSet and SWbemPropertySet 307 Scriptomatic 310 WMI Examples 312 Collecting System Information 312 Managing Printers 313 Monitoring Windows Service Packs and Hotfixes 313 Managing Services and Tasks 315 For More Information 317 8 Active Directory Scripting Interface 319 Managing the User Directory 319 Uses of the Active Directory Scripting Interface 320 Limitations of ADSI with Windows Script Host 321 ADSI Concepts 322 Multiple Inheritance 324 Creating ADSI Objects 325 Directory Security 328 Determining the Difference Between Containers and Leaves 330 ADSI Objects for the WinNT: Provider 332 IADs 333 IADsCollection and IADsContainer 336 Working with ADSI Collections 339 IADsComputer and IADsComputerOperations 340 IADsDomain 342 IADsFileService and IADsFileServiceOperations 345 IADsFileShare 347 IADsGroup 349 IADsMembers 350 IADsNamespaces 351 IADsPrintJob and IADsPrintJobOperations 351 IADsPrintQueue and IADsPrintQueueOperations 354 IADsService and IADsServiceOperations 357 IADsSession 361 IADsUser 362 IIS and Exchange 364 Managing Active Directory 364 X.500 and LDAP Terminology 364 Active Directory Objects 368 RootDSE 368 IADsO and IADsOU 369 Developing ADSI Scripts 370 EzAD Scriptomatic 372 For More Information 373 9 Deploying Scripts for Computer and Network Management 375 Using Scripts in the Real World 375 Designing Scripts for Other Users 376 Using WSF Files 377 WSF File Format Reference 379 Providing Online Help with WSF Files 384 Processing Command-Line Arguments 386 Enclosing More Than One Script 390 Putting It All Together 390 Deploying Scripts on a Network 394 Creating Simple Installation Programs with IExpress 395 Creating IExpress Install Scripts or Batch Files 398 Dealing with User Account Control 400 Providing an Uninstall Option 402 Writing Scripts to Manage Other Computers 403 Remote Scripting 405 Replicating Scripts to Multiple Computers 406 Scripting Security Issues 408 Script Signing 409 The Script Encoder 415 Setting Up Logon Scripts 416 User Profile Logon Scripts 416 Scripts for Logon, Logoff, and Other Events on Windows 7 and Vista 418 Group Policy Logon, Logoff, Startup, and Shutdown Scripts 418 Scheduling Scripts to Run Automatically 421 Writing Unattended Scripts 421 Sending Messages to the Event Log 423 Scheduling Scripts with the Task Scheduler 428 II The Command Line Environment 10 The CMD Command-Line 433 The Command Prompt 433 CMD Versus COMMAND 434 Running CMD 435 Opening a Command Prompt Window with Administrator Privileges 436 CMD Options 437 Disabling Command Extensions 439 Command-Line Processing 439 Stopping Runaway Programs 440 Console Program Input and Output 441 Using the Console Window 442 I/O Redirection and Pipes 443 Copy and Paste in Command Prompt Windows 447 Command Editing and the History List 448 Name Completion 450 Enabling Directory Name Completion 451 Multiple Commands on One Line 452 Grouping Commands with Parentheses 453 Arguments, Commas, and Quotes 454 Escaping Special Characters 454 Configuring the CMD Program 455 AutoRun 455 Environment Variable Substitution 456 The Search Path 456 Predefined and Virtual Environment Variables 459 Setting Default Environment Variables 461 Built-in Commands 462 Extended Commands 475 Listing Files with the Dir Command 476 Setting Variables with the Set Command 480 Conditional Processing with the if Command 482 Scanning for Files with the for Command 483 Getting More Information 488 11 Batch Files for Fun and Profit 491 Why Batch Files? 491 Creating and Using Batch Files 492 Batch File Programming 494 Displaying Information in Batch Files 495 Argument Substitution 496 Argument Editing 498 Conditional Processing with If 499 The Basic If Command 499 Checking for Files and Folders 500 Checking the Success of a Program 500 Performing Several Commands After If 501 Extended Testing 503 Processing Multiple Arguments 503 Working with Environment Variables 506 Environment Variable Editing 507 Processing Multiple Items with the for Command 508 Using Multiple Commands in a for Loop 510 Delayed Expansion 511 Using Batch File Subroutines 513 Prompting for Input 514 Useful Batch File Techniques 515 Processing Command-Line Options 515 Managing Network Mappings 518 Checking for Correct Arguments 519 Keeping Log Files 519 12 The MS-DOS Environment Under Windows 521 MS-DOS Programs on Windows 521 The Virtual DOS Machine 522 MS-DOS and COMMAND.COM 524 Configuring the MS-DOS Environment 525 Window and Memory Options 526 CONFIG.NT 532 AUTOEXEC.NT 535 MS-DOS Environment Variables 536 MS-DOS and Networking 536 Printing from MS-DOS 537 Print Redirection 538 Print Screen 538 Configuring Serial Communications with MS-DOS 539 Using Special-Purpose Devices for MS-DOS 539 Managing MS-DOS Programs 540 When Things Go Awry 540 13 Command-Line Utilities 543 Windows Command-Line Programs 543 The Essential Command Line 544 GUI Shortcuts 545 General-Purpose Shell Programs 547 findstr 547 more 552 tree 553 xcopy 554 File-Management Tools 557 attrib 557 cacls 559 Management Power Tools 563 driverquery 564 runas 565 tasklist 565 taskkill 568 sc 569 Networking Utilities 571 ipconfig 571 net 574 netstat 584 nslookup 586 ping 589 tracert 591 Getting More Utilities 592 III Introduction to Windows PowerShell 14 Windows PowerShell 593 Introduction to Windows PowerShell 593 An Object-Oriented Command Shell 593 Based on the .NET Framework 596 An Extensible Environment 597 Obtaining Windows PowerShell 598 The PowerShell Environment 600 The PowerShell Command Prompt 601 Command-Line Editing 602 Copying and Pasting 603 Pausing Output and Stopping a Runaway Program 604 Command-Line Syntax 604 Cmdlets and Objects and Scripts, Oh My! 607 Getting Help 610 Prompting to Complete Commands 612 Aliases 612 How to Get a Listing of Aliases 612 How to Define a New Alias 613 Navigating Directories and Other Locations 613 PowerShell Security 615 PowerShell Scripts and User Account Control 615 Script Execution Policy 616 PowerShell Profiles 617 15 PowerShell Programming 621 The Windows PowerShell Programming Language 621 Windows PowerShell Syntax 622 Comments 622 Variables and Types 623 Literal Values 625 Object Methods and Properties 626 Object Constructors 627 String Interpolation 628 Special Characters 629 Here-Strings 629 Releasing Variables 630 Predefined Variables 630 Arrays 632 Constants 637 Expressions 638 Comparisons with Arrays 640 String Operators 643 The & (Execute) Operator 646 Operator Precedence 646 Assignment Operators 647 Statement Values 648 Casts 649 Passing by Reference 650 Hash Tables 650 Flow of Control 653 if 653 while 654 do...while and do...until 654 for 655 foreach 656 switch 657 break 660 continue 661 Program Blocks 661 Exception Handling 662 trap 662 try/catch/finally 663 throw 664 Defining Functions 664 Function Parameters 665 Function Scope 668 The Dot-Source Operator 668 Variable Scope 669 Pipeline Functions and Filters 671 Splatting 672 Using the .NET API 673 Calling Static Member Functions 673 Working with Strings 674 Working with Dates and Times 676 Converting Values 680 Mathematical Functions 680 16 Using PowerShell 683 Real-World PowerShell 683 Command-Line Techniques 685 Generating Objects 685 Filtering 686 Taking Actions 689 Formatting Cmdlet Output 690 The -f Operator 690 Working with Files and Folders 691 Seeing Whether a File Exists 697 Reading Text from Files 697 Writing Text to Files 698 Identifying Files by Size 698 Creating Useful Scripts 699 Comment Your Work! 700 Command-Line Processing 700 Writing Modules 701 Exception Handling as an Exit Strategy 702 Using Hash Tables 703 The PowerShell Integrated Scripting Environment 704 Starting the PowerShell ISE 705 Configuring the ISE 706 Creating and Editing Scripts 707 Running Scripts in the ISE 708 Setting Breakpoints and Single-Stepping 709 Interactively Examining and Changing Variables 710 Conditional Breakpoints 711 Remote and Background PowerShell 712 Where to Go from Here 712 IV Appendices A VBScript Reference 713 B CMD and Batch File Language Reference 725 C Command Line Program Reference 735 D Index of Patterns and Sample Scripts 747 E Automation Object Reference 1 (Online) F WSF and WSC File Format Reference 1 (Online) G Creating Your Own Scriptable Objects 1 (Online)show more

Rating details

8 ratings
3.37 out of 5 stars
5 12% (1)
4 38% (3)
3 25% (2)
2 25% (2)
1 0% (0)
Book ratings by Goodreads
Goodreads is the world's largest site for readers with over 50 million reviews. We're featuring millions of their reader ratings on our book pages to help you find your new favourite book. Close X