Casa Automazione IT Comandi essenziali di PowerShell che ogni utente di Windows dovrebbe conoscere: Una guida completa per i principianti

Comandi essenziali di PowerShell che ogni utente di Windows dovrebbe conoscere: Una guida completa per i principianti

0
Comandi Powershell essenziali

PowerShell ha rivoluzionato il modo in cui gli utenti di Windows interagiscono con i loro sistemi operativi, trasformando complesse attività amministrative in processi semplici e automatizzati.12. Sia che siate amministratori di sistema, professionisti IT o utenti Windows che desiderano aumentare la produttività, la padronanza dei comandi PowerShell essenziali può farvi risparmiare innumerevoli ore e sbloccare potenti funzionalità di automazione.34.

Questa guida completa copre i comandi PowerShell più importanti che ogni utente di Windows dovrebbe padroneggiare, dalla navigazione di base alla gestione avanzata del sistema. Alla fine di questa guida, avrete la sicurezza di poter sfruttare le potenti funzioni di PowerShell per le attività informatiche quotidiane.

Cos'è PowerShell e perché dovrebbe interessarvi?

PowerShell è una potente shell a riga di comando e un ambiente di scripting. che è preinstallato in tutti i moderni sistemi operativi Windows.2. A differenza del tradizionale Prompt dei comandi, PowerShell utilizza un Struttura sintattica verbo-novo che rende i comandi intuitivi e leggibili per l'uomo1. Ad esempio, Ottieni processo recupera i processi in esecuzione, mentre Arresto del servizio arresta i servizi di sistema.

Vantaggi principali di PowerShell rispetto al Prompt dei comandi

PowerShell offre vantaggi significativi rispetto alla tradizionale interfaccia a riga di comando1:

  • Output basato su oggetti: Invece del testo semplice, PowerShell lavora con oggetti strutturati contenenti proprietà e metodi.
  • Funzionalità di scripting avanzate: Creare script di automazione complessi con cicli, condizioni e funzioni.
  • Estensibile tramite moduli: Aggiunta di funzionalità tramite librerie .NET e cmdlet personalizzati
  • Supporto per le condutture: Concatenare i comandi per elaborare i dati in modo efficiente
  • Compatibilità multipiattaforma: Eseguire PowerShell su Windows, Linux e macOS

Per iniziare: Apertura di PowerShell

Prima di immergersi nei comandi, è necessario sapere come accedere a PowerShell25. Su Windows 11, il metodo più semplice è:

  1. Digitare "PowerShell". nella barra di ricerca di Windows
  2. Cliccare con il tasto destro del mouse su "Windows PowerShell"
  3. Selezionare "Esegui come amministratore". per i privilegi elevati

Per la maggior parte delle attività amministrative, l'esecuzione di PowerShell come amministratore assicura che si disponga delle autorizzazioni necessarie per eseguire i comandi a livello di sistema.

Comandi di scoperta essenziali: La bussola di PowerShell

1. Ottenere aiuto: Il vostro manuale integrato

Il Ottenere aiuto è probabilmente il comando il comando PowerShell più importante imparerete mai467. Fornisce una documentazione completa per qualsiasi cmdlet, funzione o concetto di PowerShell.

Sintassi di base:

powershellOttieni aiuto

Esempi pratici:

powershell# Ottenere la guida di base per un comando
Ottieni-Help Ottieni-Processo

# Ottenere una guida dettagliata con esempi
Ottenere-Help Get-Process -Full

# Visualizza solo gli esempi
Ottieni Aiuto Ottieni Processo -Esempi

# Apri la documentazione della guida in linea
Ottieni-Processo -Online

Suggerimento: Utilizzo Aggiornamento-Aiuto periodicamente per assicurarsi di avere la documentazione più aggiornata.6.

2. Get-Command: Scoprire i comandi disponibili

Quando non si sa quale comando usare, Ottieni-Comando vi aiuta trovare il cmdlet giusto per il proprio compito486.

Modelli utili:

powershell# Elenco di tutti i comandi disponibili
Ottieni-Comando

# Trova i comandi che iniziano con "Get" 
Ottieni-Comando Get-*

# Trova i comandi contenenti "Process" 
Comando Get *Processo*

# Trova comandi per azioni specifiche
Ottieni-Comando Avvia-*
Ottieni comando Stop-*

Questo approccio è particolarmente utile quando si conosce l'azione da eseguire, ma non si è sicuri del nome esatto del comando.

3. Get-Member: Comprendere le proprietà degli oggetti

PowerShell lavora con gli oggetti e Ottenere un membro vi mostra quali proprietà e metodi sono disponibili per qualsiasi oggetto6.

powershell# Vedere le proprietà degli oggetti processo
Ottieni processo | Ottieni membro

# Visualizzare le proprietà degli oggetti di servizio
Ottieni servizio | Ottieni membro

Comandi per la gestione di file e cartelle

4. Get-ChildItem: Elenca il contenuto della directory

Ottenere l'elemento figlio è l'equivalente di PowerShell del comando dir ma con molte più funzionalità1910.

Uso comune:

powershell# Elenca il contenuto della directory corrente
Ottieni elemento figlio

# Elenco dei file nascosti
Ottenere-Figlio-Item -Forza

# Elenco ricorsivo (incluse le sottodirectory)
Get-ChildItem -Recurse

# Filtro per tipo di file
Ottenere l'elemento figlio *.txt

# Cerca i file nelle sottodirectory
Get-ChildItem -Path C:\Users -Include *.pdf -Recurse

Alias: Si può anche utilizzare lsdir, o gci come scorciatoie10.

5. Imposta posizione: Navigare nelle directory

Navigare nel file system in modo efficiente con Impostazione della posizione10.

powershell# Passare a una directory specifica
Imposta posizione C:´Users'Documents

# Passa alla directory madre
Set-Location ...

# Torna alla posizione precedente
Imposta posizione -

# Naviga usando gli alias
cd C:\Windows
sl C:\Temp

6. Copia: Copia di file e cartelle

Il Copia dell'articolo Il cmdlet fornisce potenti funzionalità di copia dei file910.

powershell# Copiare un singolo file
Copia-Item "sorgente.txt" "destinazione.txt"

# Copia con protezione da sovrascrittura
Copia-Item "sorgente.txt" "backup.txt" -Forza

# Copia di intere directory
Copia-Item "C:\Source" "C:\Backup" -Recurse

# Copia più file utilizzando i caratteri jolly
Copia l'elemento "*.log" "C:\Logs"

7. Sposta elemento: Spostare e rinominare i file

Utilizzo Sposta elemento per spostare e rinominare file e cartelle1112.

powershell# Spostare un file in un'altra posizione
Sposta-Item "vecchiofile.txt" "C:\NuovaLocazione".

# Rinomina un file
Sposta-Item "nomevecchio.txt" "nomenuovo.txt"

# Sposta tutti i file di tipo specifico
Get-ChildItem *.txt | Move-Item -Destinazione "C:\TextFiles\"

8. Rimuovi elemento: Elimina file e cartelle

Eliminazione sicura di file e directory con Rimuovi elemento10.

powershell# Eliminare un singolo file
Rimuovi-elemento "indesiderati.txt"

# Elimina con conferma
Rimuovi-Item "important.txt" -Conferma

# Eliminare le directory in modo ricorsivo
Rimuovi elemento "C:\TempFolder" -Recurse -Force

# Elimina i file che corrispondono al modello
Rimuovi-Item "*.tmp"

Attenzione: Fate molta attenzione con Rimuovi elementosoprattutto quando si utilizza -Ricorso e -Forza perché i file eliminati potrebbero non essere recuperabili.

9. Nuovo elemento: Creare file e directory

Creare rapidamente nuovi file e cartelle con Nuovo elemento1013.

powershell# Creare una nuova cartella
Nuovo Elemento -Nome "Nuova Cartella" -Tipo Elemento Directory

# Creare un nuovo file
Nuovo elemento -Nome "newfile.txt" -Tipo file

# Creare un file con contenuto
New-Item "readme.txt" -ItemType File -Value "Questo è il contenuto iniziale"

# Creare directory annidate
Nuovo elemento "C:\Projects\NewProject\Source" -ItemType Directory -Force

Gestione delle informazioni e dei processi di sistema

10. Get-Process: Monitoraggio dei processi in esecuzione

Ottieni processo fornisce informazioni dettagliate su processi in esecuzione sul sistema34.

powershell# Elenca tutti i processi in esecuzione
Ottieni processo

# Ottieni un processo specifico per nome
Ottieni processo blocco note

# Ottieni processi usando un carattere jolly
Ottieni processo nota*

# Ordina i processi per utilizzo della CPU
Get-Process | Sort-Object CPU -Descending

# Ottieni i 10 processi che consumano più memoria
Get-Process | Sort-Object WorkingSet -Descending | Select-Object -First 10

11. Arresto del processo: Termina i processi

Interrompere i processi non reattivi o non necessari con Arresto del processo4.

powershell# Arresta il processo per nome
Stop-Processo -Nome "blocco note"

# Arresta il processo per ID
Arresta processo -Id 1234

# Arresto con conferma
Stop-Processo -Nome "chrome" -Conferma

# Arresto forzato dei processi ostinati
Arresta processo -Nome "applicazione" -Forza

12. Get-Service: Gestire i servizi di Windows

Monitoraggio e gestione Servizi di Windows che vengono eseguiti in background41415.

powershell# Elenca tutti i servizi
Ottieni servizio

# Ottenere i servizi in base allo stato
Get-Service | Dove-Oggetto Stato -eq "In esecuzione"

# Ottieni un servizio specifico
Ottieni-Servizio -Nome "Spooler"

# Ottenere i servizi che iniziano con lettere specifiche
Ottenere-Servizio -Nome "Win*"

13. Avvio del servizio e arresto del servizio: Servizi di controllo

Avviare e arrestare i servizi di Windows secondo necessità1415.

powershell# Avviare un servizio
Avvia servizio -Nome "Spooler"

# Arresta un servizio
Arresta-Servizio -Nome "Spooler"

# Riavvia un servizio
Riavvia-Servizio -Nome "Spooler"

# Avviare più servizi
Get-Service -Nome "BITS", "Spooler" | Avvia servizio

Comandi per la risoluzione dei problemi di rete

14. Test-NetConnection: Test della connettività di rete

Test della connessione di rete è la versione migliorata di PowerShell di ping con funzionalità aggiuntive1617.

powershellTest di connettività di base #
Test-NetConnection google.com

# Test di una porta specifica
Test-Connessione rete google.com -Porta 80

# Traccia percorso verso la destinazione
Test-Connessione rete google.com -TraceRoute

# Test di connessioni multiple
"google.com", "microsoft.com" | ForEach-Object { Test-NetConnection $_ }

15. Get-NetIPAddress: Visualizza la configurazione IP

Controllate il vostro configurazione IP di rete con Ottieni indirizzo IP di rete1617.

powershell# Visualizza tutti gli indirizzi IP
Ottieni indirizzo IP

# Mostra solo gli indirizzi IPv4
Ottieni-NetIPAddress -AddressFamily IPv4

# Ottenere informazioni specifiche sull'adattatore
Ottenere -InterfacciaAlias "Ethernet" - Indirizzo IPv4

16. Risolvi-Nome-Dns: Test di risoluzione DNS

Test della risoluzione DNS e cercare informazioni sul dominio16.

powershell# Ricerca DNS di base
Risolvi-DnsName google.com

# Ricerca di tipi di record specifici
Risolvi-DnsName google.com -Tipo MX

# Usa un server DNS specifico
Risolvi-DnsName google.com -Server 8.8.8.8

Comandi di manipolazione dei contenuti e dei dati

17. Get-Content: Leggere il contenuto di un file

Leggere e visualizzare il contenuto dei file direttamente in PowerShell1819.

powershell# Visualizzare l'intero contenuto del file
Ottenere il contenuto di "logfile.txt"

# Leggere un numero specifico di righe
Ottieni-Contenuto "bigfile.txt" -Capo 10

# Monitora le modifiche al file (come tail -f)
Ottenere-Contenuto "live.log" -Attendere

# Leggere le ultime righe
Ottenere-Contenuto "recent.log" -Tail 20

18. Out-File: Esportazione dell'output su file

Salvare l'output del comando ai file per un'analisi successiva619.

powershell# Salvare l'elenco dei processi su file
Get-Process | Out-File "processes.txt"

# Aggiungere al file esistente
Ottieni-Data | Uscita-File "log.txt" -Append

# Salva con una codifica specifica
Get-Service | Uscita dal file "services.txt" -Codifica UTF8

19. Selezionare l'oggetto: Filtrare e formattare l'output

Controllare quali informazioni viene visualizzato dai risultati del comando2021.

powershell# Mostra solo proprietà specifiche
Get-Process | Select-Object Name, CPU, WorkingSet

# Ottenere i primi risultati
Get-ChildItem | Select-Object -First 5

# Seleziona i valori unici
Get-Process | Select-Object ProcessName -Unique

Lavorare con le pipeline PowerShell

20. Dove-oggetto: Filtrare i risultati

Filtrare i risultati dei comandi in base a criteri specifici2021.

powershell# Filtra i servizi in esecuzione
Get-Service | Where-Object Status -eq "Running"

# Filtrare i file di grandi dimensioni
Get-ChildItem | Where-Object Length -gt 1MB

# Filtraggio complesso con condizioni multiple
Get-Process | Where-Object {$_.CPU -gt 100 -e $_.WorkingSet -gt 50MB}

21. Ordinamento dell'oggetto: Ordinamento dei risultati

Organizzare la produzione in ordine crescente o decrescente21.

powershell# Ordina i processi per nome
Get-Process | Sort-Object Nome

# Ordina per più proprietà
Get-ChildItem | Sort-Object LastWriteTime, Name

# Ordina in ordine decrescente
Get-Process | Sort-Object CPU -Descending

22. PerOgniOggetto: Elaborare ogni elemento

Eseguire azioni su ogni oggetto in una conduttura1921.

powershell# Elaborare ogni file
Get-ChildItem *.txt | ForEach-Object {
    Write-Host "Elaborazione: $($_.Name)"
}

# Modifica ogni oggetto
Get-Service | ForEach-Object {
    "$($_.Nome): $($_.Status)"
}

Gestione dell'ora e della data

23. Get-Date: Lavorare con date e orari

Recuperare e formattare informazioni sulla data e sull'ora corrente19.

powershell# Ottenere la data e l'ora corrente
Ottieni-Data

# Formattare la data in modo specifico
Get-Date -Formato "aaaa-MM-gg HH:mm:ss"

# Ottenere i componenti della data
(Get-Date).DayOfWeek
(Get-Data).Anno

# Calcolo delle date future
(Get-Date).AddDays(30)

Migliori pratiche essenziali di PowerShell

Utilizzare il completamento della scheda

PowerShell funzione di completamento delle schede velocizza notevolmente l'inserimento dei comandi17. Premere Tab dopo aver digitato nomi parziali di comandi, parametri o percorsi di file per completarli automaticamente.

Sfruttare gli alias

PowerShell include molti alias incorporati per i comandi più comuni5:

  • ls o dir per Ottenere l'elemento figlio
  • cd per Impostazione della posizione
  • gatto o tipo per Ottieni contenuto
  • rm o del per Rimuovi elemento

Test dei comandi in sicurezza

Prima di eseguire comandi potenzialmente distruttivi, utilizzate l'opzione -Cosa succede se per vedere cosa succederebbe senza eseguire effettivamente il comando12:

powershellRimuovi-oggetto *.txt -Cosa succede
Arresta il servizio Spooler -Cosa succede se

Impostare il criterio di esecuzione

Per motivi di sicurezza, PowerShell limita l'esecuzione degli script per impostazione predefinita.22. Per eseguire gli script, potrebbe essere necessario modificare il criterio di esecuzione:

powershell# Controlla la politica corrente
Ottenere la politica di esecuzione

# Impostare i criteri per l'utente corrente
Imposta politica di esecuzione RemoteSigned -Scope CurrentUser

Creare il primo script PowerShell

Una volta acquisita dimestichezza con i singoli comandi, è possibile combinarli in script per l'automazione2223. Ecco un semplice esempio:

powershell# Salva come system-info.ps1
Scrivi-Host "Rapporto informazioni di sistema" -Colore sfondo verde
Write-Host "=========================" -Colore di sfondo verde

Scrivi-Host "`nData e ora corrente:" -Colore di sfondo giallo
Ottieni-Data

Scrivi-Host "`nTop 5 Processes by CPU:" -Colore di sfondo giallo
Get-Process | Sort-Object CPU -Descending | Select-Object -First 5

Scrivi-Host "`Conteggio servizi in esecuzione:" -Colore di sfondo giallo
(Get-Service | Where-Object Status -eq "Running").Count

Scrivi-Host "`Utilizzo del disco:" -Colore di sfondo giallo
Get-WmiObject -Class Win32_LogicalDisk | Select-Object DeviceID, @{Name="Size(GB)";Expression={[math]::Round($_.Size/1GB,2)}}, @{Name="FreeSpace(GB)";Expression={[math]::Round($_.FreeSpace/1GB,2)}}

Percorso di apprendimento avanzato di PowerShell

Una volta acquisita la padronanza di questi comandi essenziali, si consiglia di esplorare questi argomenti avanzati24:

  • Gestione di Active Directory con i cmdlet AD
  • Amministrazione remota del computer utilizzando PowerShell remoting
  • Pianificazione automatica delle attività con script PowerShell
  • Gestione degli errori e registrazione in script
  • Moduli e funzioni PowerShell per la riutilizzabilità del codice

Risoluzione dei problemi comuni di PowerShell

Errori dei criteri di esecuzione

Se si verifica l'errore "l'esecuzione degli script è disabilitata", controllare e modificare il criterio di esecuzione.22:

powershellGet-ExecutionPolicy -List
Imposta politica di esecuzione RemoteSigned -Ambito di applicazione CurrentUser

Errori di autorizzazione negata

Molte attività amministrative richiedono privilegi elevati. Eseguire sempre PowerShell come amministratore quando si lavora con:

  • Servizi di sistema
  • Modifiche al registro
  • Configurazioni di rete
  • Gestione degli account utente

Problemi di percorso e di localizzazione

Quando i comandi non trovano i file o le directory, verificare la posizione attuale e utilizzare i percorsi completi:

powershellOttenere la posizione
Imposta posizione C:\Il tuo percorso desiderato

Conclusione: Potenziare l'esperienza di Windows

Padroneggiare questi comandi PowerShell essenziali trasforma l'utente da utente passivo di Windows in un amministratore di sistema attivo in grado di automatizzare attività complesse e risolvere i problemi in modo efficiente.13. Il Struttura di comando verbo-novo PowerShell è intuitivo da imparare, mentre le sue potenti funzionalità di pipeline consentono un'elaborazione sofisticata dei dati e la gestione del sistema.24.

Iniziate ad esercitarvi con questi comandi in un ambiente sicuro, aumentando gradualmente la vostra fiducia ed esplorando scenari più avanzati. Ricordate che Ottenere aiuto è sempre disponibile per fornire informazioni dettagliate su qualsiasi comando e il completamento delle schede rende l'inserimento dei comandi più rapido e accurato.725.

Che si tratti di gestire file, monitorare le prestazioni del sistema, risolvere problemi di rete o automatizzare attività ripetitive, PowerShell fornisce gli strumenti necessari per lavorare in modo più efficiente ed efficace con i sistemi Windows.17. L'investimento nell'apprendimento di PowerShell si traduce in una maggiore produttività e in migliori capacità di amministrazione del sistema che vi serviranno per tutta la vostra carriera informatica.

Nessun commento

Lascia una risposta

Inserisci il tuo commento!
Inserisci il tuo nome qui

Italiano
English
English
Deutsch
Español
Italiano
Français
Uscita dalla versione mobile