Videocorso AWK e sed CGFA
Da zero a trasformare, filtrare e riassumere file di testo, CSV e log con due strumenti che ci sono su ogni computer
- Partenza: Da zero
- 12 ore con gli esercizi
- 10 lezioni in 3 livelli
- 2 lezioni gratis
A chi serve
Principianti assoluti, impiegati e analisti che lavorano con file CSV e log, sistemisti, chi usa già il terminale e vuole diventare molto più veloce
Cosa serve per iniziare
- Un computer Windows, Mac o Linux
- Sapere aprire un terminale e muoverti tra le cartelle (se hai fatto il corso Bash e Linux sei a posto)
- Nessuna esperienza di programmazione: si parte dal primo comando
Cosa installare
A cosa ti serve
- Amministrazione di server: analisi di log e controlli automatici
- Pulizia e trasformazione di file CSV e report senza aprire Excel
- Lavoro da sistemista, DevOps, supporto tecnico e analista dati
- Automazione di attività ripetitive negli script Bash e nei processi di build
- Base per capire Perl, Python e le espressioni regolari
Programma del corso
10 lezioni in 3 livelli. Ogni lezione: video, spiegazione, codice da copiare o provare, esercizio con soluzione e quiz.
Base
Estrarre colonne, cercare righe e sostituire testo
Intermedio
Variabili, array, gruppi di cattura e programmi AWK più lunghi
Avanzato
Hold space di sed, gawk avanzato e casi di lavoro reali
Progetto finale: Il rapporto vendite automatico
Scrivi uno script Bash che prende un file CSV di vendite per negozio e produce un rapporto di testo con: il totale generale, il totale per città in ordine decrescente con la percentuale, il negozio migliore e il numero di vendite sopra la media. Il file viene prima ripulito dai ritorni a capo di Windows e dalle righe vuote.
I passi
- Crea il file negozi.csv di prova (negozio;citta;reparto;importo)
- Pulisci il file con sed: togli i \r e le righe vuote
- Con un primo programma AWK calcola il totale generale e la media
- Con un secondo AWK somma gli importi per città e calcola la percentuale; ordina con sort
- Trova il negozio con l'incasso massimo
- Metti tutto in uno script Bash, scrivi il rapporto in un file e prova a lanciarlo ogni notte con cron
Esame e attestato
Alla fine del corso fai l'esame: 15 domande, serve il 75% di risposte giuste. Superato l'esame ottieni l'attestato stampabile con nome, ore, punteggio e un codice di controllo che chiunque può verificare.
Glossario di AWK e sed
- AWK
- Linguaggio per elaborare file di testo diviso in campi (colonne), dal nome dei suoi autori Aho, Weinberger e Kernighan.
- sed
- "Stream editor": programma che modifica il testo riga per riga, per esempio sostituendo o cancellando.
- Campo
- Ognuna delle colonne in cui AWK divide una riga: $1, $2, $3...
- Separatore
- Il carattere che divide i campi di una riga, come la virgola o il punto e virgola.
- Pipe
- Il simbolo | che passa il risultato di un comando al comando successivo.
- Regex
- Espressione regolare: un modello che descrive un tipo di testo da cercare.
- Array associativo
- Un contenitore di AWK in cui ogni valore si trova con una chiave, anche testuale.
- Pattern space
- La riga che sed sta elaborando in quel momento.
- Hold space
- L'area di appoggio di sed, dove conservare del testo tra una riga e l'altra.
- Gruppo di cattura
- Una parte di regex tra parentesi che memorizza il testo trovato, richiamabile con \1, \2...
- In place
- Modificare il file direttamente invece di mostrare il risultato a schermo (sed -i).
- gawk
- La versione GNU di AWK, con molte funzioni in più: date, ordinamenti, gruppi catturati.
Le prime 2 lezioni sono gratis
Per il corso completo, scuole e aziende: chiedi le condizioni.