
Molti amministratori di sistema e professionisti IT sono costantemente alla ricerca di modi efficienti per svolgere attività di sistema direttamente dalla riga di comando, in particolare nell’ambiente Windows. I servizi Windows svolgono un ruolo fondamentale nel mantenere operazioni fluide sia per il sistema che per le applicazioni. Invece di affidarsi a interfacce grafiche come Services Manager, la gestione dei servizi Windows tramite la riga di comando offre maggiore flessibilità e velocità. Questa guida approfondisce vari strumenti della riga di comando per gestire i servizi Windows direttamente dal terminale.
1. Gestire i servizi Windows consc.exe
L’ sc.exe
utilità della riga di comando è uno strumento prezioso che consente agli utenti di gestire i servizi Windows. Tramite questa utilità, è possibile configurare, monitorare e controllare i servizi senza problemi tramite la riga di comando, senza dover utilizzare il Services Manager grafico.
Controllare lo stato del servizio utilizzandosc
Per controllare lo stato di un servizio particolare, utilizzare il sc query serviceName
comando. Ad esempio:
sc query MySQL80
Questo comando rivelerà i dettagli sullo stato del servizio MySQL80:

Come mostrato, questo indica che MySQL è attualmente inattivo sulla macchina.
Avvia un servizio consc
Per attivare un servizio specifico, utilizzare il comando:
sc start MySQL80
Dopo aver avviato il servizio, puoi confermarne lo stato con:
sc query MySQL80

Interrompere un servizio utilizzandosc
Se è necessario interrompere un servizio per recuperare risorse di sistema, eseguire:
sc stop MySQL80
Confermare questa azione eseguendo:
sc query MySQL80

Crea un nuovo servizio consc
Per stabilire un nuovo servizio, la sintassi è:
sc create mte binPath="C:\Users\HP\Desktop\Examples\Service.exe"start= auto

Aggiorna un servizio esistente consc
Modifica la configurazione di un servizio esistente utilizzando:
sc config serviceName start= demand

Elimina un servizio consc
Per rimuovere completamente un servizio, eseguire:
sc delete serviceName

2. Gestione dei servizi Windows con il net
comando
Il net
comando consente agli utenti di gestire i servizi Windows senza dover usare l’interfaccia grafica. Consente di avviare, arrestare, mettere in pausa, riprendere e interrogare i servizi in modo efficiente.
Avviare e arrestare i servizi con net
i comandi
Eseguire i seguenti comandi per gestire i servizi:
net start serviceName
net stop serviceName

Sospendi e riprendi i servizi
Per i servizi che lo consentono, è possibile mettere in pausa e riprendere le operazioni utilizzando:
net pause ServiceName
net continue ServiceName

Controlla lo stato del servizio connet
Sebbene net
non riporti direttamente lo stato del servizio, puoi utilizzare:
net start | findstr "ServiceName"

Questo comando restituirà il nome del servizio se è in esecuzione; nessun output significa che il servizio non è attivo.
Gestione del servizio remoto
Gestire i servizi su macchine remote utilizzando:
net start ServiceName /S RemotePC
net stop ServiceName /S RemotePC
3. Gestire i servizi Windows con i cmdlet di PowerShell
PowerShell introduce un livello di controllo più elevato con cmdlet progettati per la gestione dei servizi. Utilizzando cmdlet come Get-Service
, Start-Service
, Stop-Service
, e Restart-Service
, gli utenti possono eseguire attività con funzionalità ancora maggiori.
Controllare lo stato del servizio con i cmdlet
Per controllare lo stato di un servizio, utilizzare:
Get-Service -Name MySQL80

Interrogazione dei servizi con PowerShell
Utilizza cmdlet per filtrare i servizi in base al loro stato. Ad esempio, per elencare i servizi in esecuzione:
Get-Service | Where-Object { $_. Status -eq 'Running' }

Gestire i servizi con i cmdlet di PowerShell
Avvia e arresta i servizi utilizzando:
Start-Service -Name MySQL80
Stop-Service -Name MySQL80
E controlla di nuovo lo stato:
Get-Service -Name MySQL80

Modifica dei tipi di avvio del servizio con i cmdlet di PowerShell
Per modificare il tipo di avvio di un servizio, puoi impostarlo su automatico, manuale o disabilitato con:
Set-Service -Name ServiceName -StartupType Automatic
Set-Service -Name ServiceName -StartupType Manual
Set-Service -Name ServiceName -StartupType Disabled
Ciò consente una gestione fluida e personalizzata in base alle vostre preferenze operative.
Gestione remota con PowerShell
Per verificare o controllare i servizi su una macchina remota, utilizzare:
Get-Service -Name ServiceName -ComputerName RemotePC
Questa capacità è particolarmente utile per la gestione dei servizi in ambienti con più computer.
4. Automatizzare le attività di gestione dei servizi
Le capacità di scripting di PowerShell consentono agli amministratori di automatizzare la gestione dei servizi, riducendo al minimo l’intervento manuale. Ad esempio, puoi creare uno script che monitora costantemente lo stato di un servizio e lo riavvia se si blocca.
Esempio di uno script di automazione
Consideriamo uno script che controlla se il servizio MySQL80 è operativo e lo riavvia in caso contrario:
$serviceName = "MySQL80" $service = Get-Service -Name $serviceName if ($service. Status -ne "Running") { Restart-Service -Name $serviceName -Force Write-Output "$serviceName was stopped and has been restarted." } else { Write-Output "$serviceName is already running." }
L’esecuzione degli script è limitata per impostazione predefinita in Windows. Quindi, per abilitare l’esecuzione, esegui:
Set-ExecutionPolicy RemoteSigned

Per eseguire lo script creato, vai alla sua posizione ed esegui:
.\serviceScript.ps1

Sfruttando la potenza di strumenti da riga di comando come sc.exe
, net
, e PowerShell, ottieni autorità completa sui servizi Windows senza dover utilizzare il Services Manager grafico. Ogni metodo fornisce mezzi efficaci per avviare, arrestare e configurare i servizi. Inoltre, le capacità di scripting di PowerShell facilitano un’automazione estesa, assicurando che i servizi critici rimangano operativi migliorando al contempo le prestazioni e l’affidabilità del sistema.
Domande frequenti
1. Cosa sono i servizi Windows?
I servizi di Windows sono processi in background che vengono eseguiti indipendentemente dalle sessioni utente e forniscono funzionalità essenziali per il sistema operativo e le applicazioni.
2. Come faccio a sapere quali servizi sono in esecuzione sul mio computer Windows?
È possibile scoprire quali servizi sono in esecuzione utilizzando comandi come sc query
o Get-Service
in PowerShell.
3. Posso gestire i servizi da remoto tramite riga di comando?
Sì, è possibile gestire i servizi sui computer remoti utilizzando il net
comando combinato con lo /S
switch o tramite cmdlet di PowerShell con il -ComputerName
parametro.
Lascia un commento ▼