Passa ai contenuti principali

Bash Conditional, differenze tra test, [ e [[ spiegate in modo semplice

Ultimamente mi sono messo a curiosare sul mondo dello scripting Bash, e mi sono accorto che uno dei punti che più confonde chi inizia riguarda le condizioni: in altre parole, come dire al computer “se succede questo, fai quello”. In Bash ci sono diversi modi per farlo: test, [ ... ] e [[ ... ]]. All’inizio sembrano tutti uguali, ma in realtà ci sono alcune differenze importanti.

test è il metodo più “vecchio” e funziona praticamente ovunque. Serve a confrontare numeri, parole o verificare se un file esiste, e restituisce un “vero” o “falso” che lo script può usare per decidere cosa fare. La cosa importante è fare attenzione agli spazi e alla sintassi, altrimenti lo script si confonde facilmente.

Le parentesi quadre [ ... ] sono praticamente un altro modo per scrivere test. Molti script le usano perché sono più leggibili, ma le regole sono le stesse: serve attenzione a spazi e caratteri speciali.

La doppia parentesi quadra [[ ... ]] è invece la versione moderna e più comoda di Bash. Permette di fare confronti più avanzati, gestire meglio le variabili e riduce il rischio di errori. È il metodo che consiglio se volete scrivere script chiari, sicuri e facili da leggere, soprattutto quando si gestiscono input che non controlliamo completamente.

Nella sicurezza informatica, capire queste differenze è utile: anche un piccolo errore in uno script può causare problemi imprevisti o creare vulnerabilità. Usare la sintassi giusta aiuta a scrivere codice più affidabile.

Di recente ho trovato un video molto interessante che spiega tutto questo in maniera chiara e divertente, con esempi pratici. Se volete approfondire, vi lascio il link qui: [test vs [ vs [: Bash Conditionals Explained!

Commenti

Popolari

CTF, talento e gioco di squadra. Il Team Italy pronto alla sfida europea

A Torino è stata presentata la squadra nazionale italiana di cybersicurezza, il Team Italy 2025-2026, composta da dieci studenti selezionati tra licei, istituti tecnici e università chiamati a rappresentare l’Italia nelle prossime competizioni nazionali e internazionali. La squadra parteciperà, a ottobre, allo European Cybersecurity Challenge che si terrà a Varsavia: una vetrina importante dove i giovani talenti mettono alla prova tecniche di difesa e attacco in scenari simulati e controllati. Alla base della preparazione c’è un approccio pratico e collettivo: training e addestramento gratuiti organizzati dal Cybersecurity National Lab del CINI, che trasformano il gioco in formazione concreta per professionisti di domani. Questo percorso mostra come il mondo delle CTF (capture the flag) non sia solo svago ma una palestra fondamentale per allenare competenze applicabili alla protezione di infrastrutture strategiche come ospedali, scuole e aeroporti. Le CTF vanno celebrate: offrono scena...

Il fantasma di Stuxnet. Quanto siamo pronti a fermare un attacco simile nel 2025

Quindici anni dopo la scoperta di Stuxnet, il malware che nel 2010 dimostrò la possibilità concreta di sabotare un impianto industriale attraverso il codice, la domanda sul ripetersi di un’operazione simile è più attuale che mai. All’epoca, la combinazione di zero-day Windows, driver firmati con certificati contraffatti e la manipolazione dei PLC Siemens che controllavano le centrifughe iraniane segnarono una svolta epocale: per la prima volta un’arma informatica aveva prodotto un effetto fisico su larga scala, nascosta dietro feedback falsificati che trassero in inganno gli operatori. Non era un malware generico, né un ransomware, ma una vera e propria operazione militare digitale disegnata per un obiettivo specifico. Dal 2010 al 2025 lo scenario è cambiato radicalmente. Le infrastrutture industriali sono sempre più connesse con reti IT e servizi cloud, ampliando una superficie d’attacco che un tempo era confinata in ambienti isolati. Le tecniche offensive si sono evolute: non solo ma...

iPhone 17 Pro, la nuova frontiera della sicurezza Apple

Apple ha presentato con la serie iPhone 17 (incluse le versioni Pro) una delle sue evoluzioni più importanti in ambito sicurezza, puntando esplicitamente a contrastare spyware sofisticati e vulnerabilità di memoria – tipico punto di ingresso per attacchi mirati. Ecco cosa cambia davvero, cosa resta da fare e perché queste novità sono rilevanti per chi si occupa di sicurezza informatica. Quando si parla di sicurezza sui nuovi iPhone 17 Pro, le innovazioni più significative sono: - Memory Integrity Enforcement (MIE): nuova protezione hardware/software “always-on” che combina vari meccanismi per impedire exploit basati su bug di memoria. - Enhanced Memory Tagging Extension (EMTE): è il “cuore” della protezione, su cui si basa la gestione più sicura della memoria, con tagging, confidenzialità dei tag, e allocatori di memoria più robusti. - Applicazione difensiva su aree sensibili del sistema, incluso il kernel e più di settanta processi “userland” considerati ad alto rischio. - MIE avrà ef...