Windows Service Management: Batch Operations Based on Name Prefix and Command Line Implementation

Nov 28, 2025 · Programming · 17 views · 7.8

Keywords: Windows Service Management | Command Line Tools | SC Command | PowerShell | Service Filtering | Batch Operations

Abstract: This paper provides an in-depth exploration of batch service management techniques in Windows systems based on service name prefixes. Through detailed analysis of the core parameters and syntax characteristics of the sc queryex command, it comprehensively examines the complete process of service querying, state filtering, and name matching. Combined with PowerShell's Get-Service cmdlet, the paper offers multi-level solutions ranging from basic queries to advanced filtering. The article includes complete code examples and parameter explanations, covering common management scenarios such as service startup, stop, and restart, providing practical technical references for system administrators.

Fundamentals of Windows Service Querying

In Windows system management, service management constitutes a crucial aspect of daily operations. Command-line tools enable efficient batch operations on services, particularly when dealing with services sharing common naming patterns.

Core Applications of SC Command

The built-in sc (Service Control) command in Windows systems serves as the fundamental tool for service management. The sc queryex subcommand provides extended service query capabilities, allowing retrieval of detailed service information.

Service Filtering Based on Prefix

For scenarios requiring identification of services with names starting with specific prefixes, the following command combination can be employed:

sc queryex type= service state= all | find /i "NATION"

Key parameter analysis of this command:

PowerShell Enhanced Solutions

Beyond traditional command-line tools, PowerShell offers more robust service management capabilities. The Get-Service cmdlet supports wildcard matching and multiple filtering conditions.

Query Based on Service Names

Using wildcards to match service name prefixes:

Get-Service "NATION*"

This command returns service objects whose names begin with "NATION", containing complete information including service status, name, and display name.

Query Based on Display Names

When matching based on service display names is required:

Get-Service -DisplayName "*NATION*"

This approach accommodates scenarios where service names and display names differ, providing more flexible matching capabilities.

Service State Management Operations

After obtaining service lists, subsequent start, stop, and restart operations can be performed. In PowerShell environments, batch processing can be achieved through pipeline operations.

Service Stop Operation

Get-Service "NATION*" | Stop-Service

Service Start Operation

Get-Service "NATION*" | Start-Service

Service Restart Operation

Get-Service "NATION*" | Restart-Service

Advanced Filtering and Exclusion

In practical applications, more refined filtering conditions may be necessary. Get-Service supports -Include and -Exclude parameters for implementing complex query logic.

Including Specific Patterns

Get-Service -Name "NATION*" -Include "*CITY","*STATE"

Excluding Specific Services

Get-Service -Name "NATION*" -Exclude "NATION-TEST"

State Filtering and Sorting

Service state-based filtering can be achieved through Where-Object, for example, retrieving only running services:

Get-Service "NATION*" | Where-Object {$_.Status -eq "Running"}

When sorting services by status, note that Stopped status has a value of 1, while Running status has a value of 4, causing stopped services to appear first in ascending order.

Permission and Compatibility Considerations

Executing service management operations requires appropriate system permissions. Regular users may be unable to view or operate certain system services. Additionally, Get-Service primarily targets Windows services, with limited support for device driver services.

Practical Application Scenarios

This prefix-based service management approach is particularly suitable for:

Conclusion

By combining traditional command-line tools with modern PowerShell cmdlets, flexible and efficient service management solutions can be constructed. Batch operations based on name prefixes not only enhance management efficiency but also provide reliable technical foundations for automated operations.

Copyright Notice: All rights in this article are reserved by the operators of DevGex. Reasonable sharing and citation are welcome; any reproduction, excerpting, or re-publication without prior permission is prohibited.