Advanced Shell Commands
Shell commands generally allow you to enter the command completely from the command prompt or enter the shell.
A shell command has several layers. As an example, the Net Shell (netsh) command is entered by typing netsh. Once launched, it will change the command prompt to netsh>.
You can then enter ? to see all the available commands. Type in interface and press Enter, and you're in a different layer of netsh identified as netsh interface>. Another request for help with the ? symbol will show a completely different set of commands that can be executed here.
When working with shell commands, you'll often be trying to achieve a specific objective and following detailed steps, such as through a Microsoft Knowledge Base article. In other words, you probably won't ever master all of the shell commands, but instead you will occasionally use them to perform specific tasks.
You can also enter the full netsh command from the command line without entering the actual shell program. For example, the following command can be executed from the command prompt, and it will set the IP address to 10.10.5.100 with a subnet mask of 255.255.255.0 and a default gateway of 10.10.5.1. You should enter it as a single line at the command prompt:
netsh interface ipv4 set address name="Local Area Connection" static
10.10.5.100 255.255.255.0 10.10.5.1
Some of the other common shell commands you may come across are these:
Wmic This allows you to perform advanced Windows Management Instrumentation (WMI) queries from the command line. WMI is very rich and robust, and if you dig into scripting more, you'll find you can do quite a bit with it. It's intertwined with many products that use WMI queries to learn details about systems remotely. WMIC allows you to execute WMI queries from the command line. As a simple example, the qfe command (short for Quick Fix Engineering) will retrieve a listing of all updates installed on the system and is executed using WMIC qfe. You'll see this in action in the batch fi le section.
Note WMI is used both to retrieve and set information on computers As an example, you can create scripts to set the power-setting values on computers remotely using the Win32_PowerSetting class or remotely activate a specific power plan using the Win32_Plan.Activate() method.
NTDSUtil The New Technology Directory Services Utility (NTDSUtil) is often used to maintain Active Directory. You can use it to restore Active Directory, change the directory services restore mode administrator password, or seize single master operations roles held by domain controllers. While Active Directory maintenance is often left to domain administrators, you may come across it in your travels if your desktops are in a domain.
In this tutorial:
- Working with the Command Prompt
- Starting and Ending a Command Prompt Session
- Easy ways to invoke administrator Command Prompt sessions
- Starting Command Prompt at a Particular Folder
- Strings with Spaces Need Quotes
- Cmd.exe vs. Command.com
- Commands Are Not Case Sensitive
- Starting Command Prompt and Running a Command
- Cmd.exe and Other Command Prompts
- Using AutoRun to Execute Commands When Command Prompt Starts
- Using Cmds Command-Line Syntax
- Using Commands
- Type /? for help
- Starting Programs
- Open Windows Explorer at the current Command Prompt folder
- Using File-Name and Folder-Name Completion
- Use a different completion character
- Using Wildcards
- Editing the Command Line
- Using Command Symbols
- The Redirection Symbols
- The Pipe Symbol
- The Command Combination Symbols
- Pausing or Canceling Commands
- Simplifying Command Entry with Doskey Macros
- DOSKEY Saves Typing
- System Variables Identify the Environment
- Viewing Environment Variables
- Modifying Environment Variables
- Predefined Environment Variables
- Customizing Command Prompt Windows
- Setting the Window Size and Position
- Setting the Window Size and Position Visually
- Selecting a Font
- Setting Colors
- Setting Other Options
- Copy and paste in the command prompt window
- Navigating from the command prompt
- Printing a list of filenames
- Commands Use Paths
- Identifying Executables
- Modifying the Path to Executables
- Modifying the Path with the GUI
- Changing the Current Path with CD
- Changing the Current Path with Windows Explorer
- Capturing the Output
- A Sampling of Commands
- Dir
- Copy
- XCopy
- SET
- NET USE
- SystemInfo
- DriverQuery
- Echo
- Advanced Shell Commands
- Creating a Batch File
- Scheduling a Batch File
- Creating Scheduled Tasks with a Script
- Using Windows PowerShell and the PowerShell ISE
- Windows PowerShell ISE
- PowerShell Commands
- Verbs and Nouns
- Sending Output to a Text File
- PowerShell Syntax
- Variables Created with a $ Symbol
- Comparison Operators
- Parentheses, Brackets, and Braces
- Running PowerShell Scripts
- PowerShell Execution Policy
- Changing the Execution Policy
- Looping
- Collections
- Creating a PowerShell Script
- Documenting Scripts
- Using PowerShell Commands
- Getting Help on PowerShell
- Using WMI_Cmdlets
- Getting Details on an Object
- Querying Information on Specific Objects
- Terminate Applications with Win32_process
- Formatting Output with the -f Format Operator
- Filtering the Output with the Where-Object Command
- Using the IF statement
- Using the Switch Statement
- Script Reusability